将新工作簿另存为CSV

时间:2020-06-10 22:36:03

标签: excel vba csv

我在下面的Workbook.SaveAs中遇到1004错误。我正在尝试从源工作簿创建一个新工作簿,将一些数据复制到新工作簿中,然后将其另存为CSV文件,与源工作簿相同。我使用的是Mac,代码如下。

Option Explicit

Sub GenerateDocusign():
    Dim csvDest As Workbook
    Dim currentPath As String
    Dim newpath As String

    Set csvDest = Workbooks.Add
    currentPath = Application.ThisWorkbook.Path
    newpath = currentPath & "/test1.csv"

    With csvDest.Sheets("sheet1")
        .Cells(1, 1).Value = "Email"
        .Cells(1, 2).Value = "Name"
    End With

    csvDest.SaveAs fileName:=newpath, FileFormat:=xlCSV
    csvDest.Close

End Sub

我收到的错误是:

运行时错误“ 1004”:

应用定义或对象定义的错误

该错误始终发生在“ csvDest.SaveAs ...”行。有趣的是,如果我创建一个CSV文件(例如“ test.csv”),然后使用newpath = currentPath & "/test.csv"运行我的子例程,那么该代码将起作用并提示我是否要覆盖该文件!使用newpath的其他任何值,我都会收到上述错误。我无法想象那里发生了什么。

我现在不知所措,错误的细节还有很多不足之处。我的问题似乎与SO上已有的许多其他问题相似但不完全相同。

0 个答案:

没有答案