0

在我的 Windows 电脑上,我有一个包含几个 csv 文件的文件夹,但有时它们之间有一个 xlsx 文件。

稍后我想将所有 csv 文件复制到一个文件中,以便将其加载到数据库中。但为此,我需要将 xlsx 文件也转换为 csv。我不想单独打开所有。有没有办法自动完成?我试图在 Excel 中创建一个宏,但我不知道如何将其应用于所有 xlsx 文件。

谢谢你的帮助!

4

1 回答 1

1

尝试FileSystemObject方法

strPath = "C:\PATH_TO_YOUR_FOLDER"

Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.DisplayAlerts = False

Set objFso = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFso.GetFolder (strPath)

For Each objFile In objFolder.Files

If objFso.GetExtensionName (objFile.Path) = "xls" Then
   Set objWorkbook = objExcel.Workbooks.Open(objFile.Path)
   ' Include your code to work with the Excel object here
   objWorkbook.Close True 'Save changes
End If

Next

objExcel.Quit

那应该让你开始。

请记住,在 2003 版之后,Excel 的Application.FileSearch已弃用,因此FileSystemObject方法更好

于 2013-07-05T13:43:34.267 回答