vba 保存为 CSV

vba to save as CSV

我找到了将单个 sheet 保存为 CSV 的代码。 但我收到错误: 运行-时间错误'1004' 无法访问只读文档 'MasterCallOneList.CSV'

如何修复?

该文档实际上是一个不存在的新文档,所以我不知道为什么它会说该文档是只读的。

Application.DisplayAlerts = False

Dim strFullName As String
strFullName = Application.Path + "\MasterOneCallList.CSV"
ThisWorkbook.Sheets("Combined").Copy
ActiveWorkbook.SaveAs Filename:=strFullName, FileFormat:=xlCSV, CreateBackup:=True
ActiveWorkbook.Close

Application.DisplayAlerts = True

可能是由于 application.path 目录中的保护级别。

你试过了吗

Application.DisplayAlerts = False

Dim strFullName As String
strFullName = ThisWorkbook.Path + "\MasterOneCallList.CSV"
ThisWorkbook.Sheets("Combined").Copy
ActiveWorkbook.SaveAs Filename:=strFullName, FileFormat:=xlCSV, CreateBackup:=True
ActiveWorkbook.Close

Application.DisplayAlerts = True
strFullName = Application.Path + "\MasterOneCallList.CSV"

这可能是错误,路径名应该是 ms_office excel 文件夹。尝试使用实际的文件夹路径字符串,代码应该可以工作。如果它确实有效,您将不得不想出一种方法来获取实际的路径字符串。

    Sub Button1_Click()

    Dim strFullName As String

    Application.DisplayAlerts = False

    strFullName = "C:\Users\dmorrison\Downloads\TestKryztof" + "\MasterOneCallList.CSV"
    ThisWorkbook.Sheets("Combined").Copy
    ActiveWorkbook.SaveAs Filename:=strFullName, FileFormat:=xlCSV, CreateBackup:=True
    ActiveWorkbook.Close

    Application.DisplayAlerts = True
End Sub