Vba 在文件夹中查找excel宏创建的xls文件

Vba 在文件夹中查找excel宏创建的xls文件,vba,excel,csv,Vba,Excel,Csv,我打算编写的宏必须处理文件夹中给定的csv文件,然后转换为xls格式 然后我想在同一个文件夹中找到所有创建的xls文件,并将它们合并到一个xlsx文件中 第一个循环运行良好(要查找文件夹中的所有csv文件,请对其进行处理并将其转换为xls格式) 但是,当我尝试查找所有xls文件时,它返回空。我还尝试调试和添加手表。它返回空字符串 我不确定我的代码中有什么错误。请看下面 Sub Macro2() fname = "Consolidated Excel Spreadsheet"

我打算编写的宏必须处理文件夹中给定的csv文件,然后转换为xls格式

然后我想在同一个文件夹中找到所有创建的xls文件,并将它们合并到一个xlsx文件中

第一个循环运行良好(要查找文件夹中的所有csv文件,请对其进行处理并将其转换为xls格式)

但是,当我尝试查找所有xls文件时,它返回空。我还尝试调试和添加手表。它返回空字符串

我不确定我的代码中有什么错误。请看下面

    Sub Macro2()

    fname = "Consolidated  Excel Spreadsheet" & ".xlsx"
    fpath = "C:\Path\"
    StrDstFile = fpath & fname
    Set objWorkbook = objExcel.Workbooks.Add()
    ActiveWorkbook.SaveAs StrDstFile, FileFormat:=51
    Set DstWb = ActiveWorkbook
    CsvFile = Dir(fpath & "*.csv")
    ' This runs absolutely fine.
    Do While CsvFile <> ""
        StrSrcFile = fpath & CsvFile
        Set SrcWb = Workbooks.Open(StrSrcFile)
        SrcWb.Activate
        ActiveWorkbook.SaveAs Replace(SrcWb.FullName, ".csv", ".xls"), FileFormat:=xlExcel8
        SrcWb.Close True
        Set SrcWb = Nothing
        CsvFile = Dir
    Loop
    XlsFile = Dir(fpath & ".xls")
    ' This does not find any xls files in the directory, even though the files exist here
    Do While XlsFile <> ""
        StrSrcFile = fpath & XlsFile
        Set SrcWb = Workbooks.Open(StrSrcFile)
        SrcWb.Activate
        XlsFile = Dir
    Loop

End Sub
Sub-Macro2()
fname=“合并Excel电子表格”和“.xlsx”
fpath=“C:\Path\”
StrDstFile=fpath&fname
设置objWorkbook=objExcel.Workbooks.Add()
ActiveWorkbook.SaveAs标准文件,文件格式:=51
设置DstWb=ActiveWorkbook
CsvFile=Dir(fpath&“*.csv”)
"这车开起来绝对不错。
在CsvFile“”时执行此操作
strrcfile=fpath和CsvFile
设置SrcWb=Workbooks.Open(StrSrcFile)
SrcWb.Activate
ActiveWorkbook.SaveAs替换(SrcWb.FullName、.csv、.xls),文件格式:=xlExcel8
SrcWb.Close为真
设置SrcWb=Nothing
CsvFile=Dir
环
XlsFile=Dir(fpath&“.xls”)
'这在目录中找不到任何xls文件,即使这些文件存在于此处
当XlsFile“”时执行此操作
strrcfile=fpath&XlsFile
设置SrcWb=Workbooks.Open(StrSrcFile)
SrcWb.Activate
XlsFile=Dir
环
端接头

您在
XlsFile=Dir(fpath&“.xls”)中缺少一个
*


它应该是
XlsFile=Dir(fpath&“*.xls”)
您在
XlsFile=Dir(fpath&“.xls”)中缺少一个
*


应该是
XlsFile=Dir(fpath&“*.xls”)

很高兴我能帮忙!请花一分钟时间接受答案,并参观了解该系统是如何工作的:很高兴我能提供帮助!请花一分钟接受答案,并参观了解SO的工作原理: