使用宏将 Office Excel 表格导出到 csv

vg4*_*425 8 csv microsoft-excel-2010

我在 Excel 2010 中使用 Excel 表格。我想快速将这些表格的内容导出到 *.csv。

我当前的工作流程: 1. 手动选择表格 2. 将内容复制到新工作簿 3. 将工作簿另存为 *.csv 文件

所需的工作流程: 1. 手动选择表 2. 运行写入预定义文件名的宏

由于表具有唯一的名称(例如 CurrentDataTable),是否有一个函数可以获取表名、目标文件和所需的输出格式并写入输出文件?

chu*_*uff 6

没有内置的 Excel 命令或函数可以执行您想要的操作,但您可以使用 VBA 对其进行编程。

以下代码可能与您要查找的内容相近:

Sub ExportTable()

    Dim wb As Workbook, wbNew As Workbook
    Dim ws As Worksheet, wsNew As Worksheet
    Dim wbNewName As String


   Set wb = ThisWorkbook
   Set ws = ActiveSheet

   Set wbNew = Workbooks.Add

   With wbNew
       Set wsNew = wbNew.Sheets("Sheet1")
       wbNewName = ws.ListObjects(1).Name
       ws.ListObjects(1).Range.Copy
       wsNew.Range("A1").PasteSpecial Paste:=xlPasteAll
       .SaveAs Filename:=wb.Path & "\" & wbNewName & ".csv", _
             FileFormat:=xlCSVMSDOS, CreateBackup:=False
   End With

End Sub
Run Code Online (Sandbox Code Playgroud)

该代码假定您在每个工作表中有一个表格。它创建一个新工作簿,将表复制到该工作簿的工作表 1,并将工作簿保存为与表同名的 CSV 文件。