Macos 如何使用VBA for Mac创建新的excel文件
我正在Excel 2011中创建一个宏,用于Mac创建报告。宏的一部分要打开文件(99%的时间),编辑文件,然后关闭文件(保存更改)。在极少数情况下,如果文件不存在,它会创建一个新的excel文件,对其进行编辑,然后关闭该文件(保存更改) 我已经成功地创建了使用现有在线问题和答案打开现有文件的功能。但是,如果它找不到文件,我无法确定创建文件的方法。如果我试图简单地打开一个不存在的文件,那么它就会出错 代码如下:Macos 如何使用VBA for Mac创建新的excel文件,macos,vba,excel,Macos,Vba,Excel,我正在Excel 2011中创建一个宏,用于Mac创建报告。宏的一部分要打开文件(99%的时间),编辑文件,然后关闭文件(保存更改)。在极少数情况下,如果文件不存在,它会创建一个新的excel文件,对其进行编辑,然后关闭该文件(保存更改) 我已经成功地创建了使用现有在线问题和答案打开现有文件的功能。但是,如果它找不到文件,我无法确定创建文件的方法。如果我试图简单地打开一个不存在的文件,那么它就会出错 代码如下: Dim nExcel As Object Dim nWB As Object If
Dim nExcel As Object
Dim nWB As Object
If FileOrFolderExistsOnMac(1, strFile) Then
Workbooks.Open (strFile)
...
ActiveWorkbook.Close SaveChanges:=True
Else
'Note: I understand that this check should be redundant
Set nExcel = GetObject(, "excel.application") 'gives error 429 if Excel is not open
If Err = 429 Then
Set nExcel = CreateObject("excel.application") 'create
Err.Clear
End If
'Set nWB = nExcel.documents.Add
...
ActiveWorkbook.Close SaveChanges:=True
End If
好的,语句的If块可以工作。在Else块中,我能找到的唯一与创建不存在的文件相关的帖子是:
显然Word和Excel不一样,希望它们有相似的语法是一个牵强的梦想。但是,我继续尝试了它,它一直运行到我设置nWB=nExcel.documents.Add的注释行,运行时错误438:对象不支持此属性或方法。您不需要设置nExcel行。这用于从另一个应用程序(在Windows上)控制excel。您只需创建一个新的“工作簿”,由于您已经在Excel中,因此上下文已经存在,因此您只需将其替换为该工作簿并删除错误检查:
Workbooks.Add
您不需要
设置nExcel
行。这用于从另一个应用程序(在Windows上)控制excel。您只需创建一个新的“工作簿”,由于您已经在Excel中,因此上下文已经存在,因此您只需将其替换为该工作簿并删除错误检查:
Workbooks.Add
您不需要
设置nExcel
行。这用于从另一个应用程序(在Windows上)控制excel。您只需创建一个新的“工作簿”,由于您已经在Excel中,因此上下文已经存在,因此您只需将其替换为该工作簿并删除错误检查:
Workbooks.Add
您不需要
设置nExcel
行。这用于从另一个应用程序(在Windows上)控制excel。您只需创建一个新的“工作簿”,由于您已经在Excel中,因此上下文已经存在,因此您只需将其替换为该工作簿并删除错误检查:
Workbooks.Add