在我的Windows PC上我有一个带有几个csv文件的文件夹但有时候之间有一个xlsx文件。
稍后我想将所有csv文件复制到一个,以便我可以将其加载到数据库中。 但为此我需要将xlsx文件转换为csv。我不想单独打开所有。有没有办法自动完成?我试图在Excel中创建一个宏,但我不知道如何将其应用于所有xlsx文件。
感谢您的帮助!
答案 0 :(得分: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
方法更好