VBA代码将CSV转换为XLS

时间:2015-04-30 15:26:57

标签: excel vba csv converter xls

目标:我有一个文件夹,其中多个CSV被转储到我的驱动器上。这些CSV需要转换为XLS文件并保存(作为XLS文件)到同一个原始文件夹中。我有一个代码(粘贴在下面),它可以很好地工作,但是......

问题:每次说出"代码执行被中断时弹出一个窗口,"允许我继续,结束或调试。我可以在每次弹出窗口时单击“继续”(弹出需要转换的每个文件),脚本将完美运行,但当然,我不必再点击“继续”数百次。下面代码的星号部分是单击Debug时突出显示的部分。

Sub Convert_CSV_XLS()

Dim wb As Workbook
Dim strFile As String, strDir As String

strDir = "xx:\xx\xx\xx\xx\xx\xx\xx\"
strFile = Dir(strDir & "*.csv")

Do While strFile <> ""

Set wb = Workbooks.Open(Filename:=strDir & "\" & strFile, Local:=True)
**wb.SaveAs Replace(wb.FullName, ".csv", ".xls"), 56**
wb.Close SaveChanges:=False

Set wb = Nothing
strFile = Dir
Loop

End Sub

再次 - 代码正常工作,只是调试窗口不断弹出,我无法弄清问题是什么。顺便说一句,我不得不&#34; xx&#34;超出实际目录。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

尝试:this

它可能有助于解决您的问题,我也毫无理由地使用了其中一个粘性调试框,这一行帮助了我。

编辑:这里是上面网站上的代码,它解决了上述问题。 在一个代码的开头添加这一行就可以了。

Application.EnableCancelKey = xlDisabled