如何在 Excel 中将单元格区域导出到 CSV 文件


CSV(逗号分隔值)是一种用于存储表格数据的纯文本文件格式。它是一种广泛支持且常用的格式,用于在不同应用程序之间交换数据,尤其是在 Microsoft Excel、Google Sheets 等电子表格软件中。在使用 CSV 文件时,务必注意使用的分隔符,正确处理特殊字符,并确保数据完整性和一致性。

在 Excel 中将单元格区域导出到 CSV 的步骤

要将 Excel 数据中的单元格区域导出到 CSV(逗号分隔值)格式,您可以按照以下步骤操作

步骤 1

打开包含数据的 Excel 工作簿。按 Alt+F11 打开 VBA 编辑器。通过点击插入 -> 模块插入一个新模块。

将以下代码复制并粘贴到新添加的模块中。

示例

Sub ExportRangeToCSV()
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim savePath As String
    Dim saveFileName As String
    Dim rng As Range
    
    ' Set the workbook and worksheet variables
    Set wb = ThisWorkbook
    Set ws = wb.Worksheets("Sheet1") ' Replace "Sheet1" with your actual sheet name
    
    ' Prompt user to select the range
    On Error Resume Next
    Set rng = Application.InputBox("Select the range to export:", Type:=8)
    On Error GoTo 0
    
    ' Check if user canceled the selection
    If rng Is Nothing Then
        Exit Sub
    End If
    
    ' Prompt user for save location and filename
    savePath = Application.GetSaveAsFilename(FileFilter:="CSV Files (*.csv), *.csv")
    
    ' Check if user canceled the save dialog
    If savePath = "False" Then
        Exit Sub
    End If
    
    ' Get the file name from the full path
    saveFileName = Dir(savePath)
    
    ' Export the range to CSV
    With CreateObject("Scripting.FileSystemObject")
        Dim file As Object
        Set file = .CreateTextFile(savePath, True)
        
        Dim row As Range
        For Each row In rng.Rows
            Dim cell As Range
            For Each cell In row.Cells
                file.Write cell.Value & ","
            Next cell
            file.WriteLine
        Next row
        
        file.Close
    End With

    MsgBox "Selected range exported to CSV successfully."
End Sub

步骤 2

修改代码以设置要导出的正确工作表名称和区域。保存并关闭 VBA 编辑器。

按 Alt+F8 打开宏对话框。选择 ExportRangeToCSV 宏并点击运行。

步骤 3

点击运行后,代码将提示您选择要导出的单元格区域。

步骤 4

选择区域并点击确定后,代码将提示“另存为”对话框,您需要在其中输入文件名和要保存 CSV 文件的所需位置,默认“保存类型”为 CSV 文件。

步骤 5

点击保存后,文件将保存到所需位置。

文件和输出将如下所示

结论

总而言之,使用 VBA 将 Excel 工作表中选定的数据区域导出到 CSV 文件是完全可行的。通过利用 VBA 代码,用户可以在宏执行期间动态选择所需的区域,从而提示交互式选择过程。提供的代码成功地将选定的区域导出到 CSV 文件,消除了标题行的重复。此简化方案确保导出的 CSV 文件包含相关数据,而不会出现冗余。

借助此 VBA 功能,用户可以有效地将 Excel 工作簿中的特定数据区域导出到 CSV 文件,简化数据管理并促进与其他应用程序的进一步分析或集成。

更新于: 2023年7月20日

3K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告