【发布时间】:2015-08-03 07:55:10
【问题描述】:
使用 Excel VBA,我尝试将工作簿的单张打印为 PDF。
我正在使用此代码:
Private Sub cmd_Print_Design_Click()
Sheets("Sheet1").ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=ThisWorkbook.Path & "/" & "Design Summary", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
代码没有运行,我得到ERROR 9 "Subscript out of Range"。我不明白如何解决它。
【问题讨论】:
-
程序运行时,活动工作簿中是否有名为“Sheet1”的工作表?
-
我可以让它产生的唯一错误是如果 Sheet1 不存在,文件没有保存(所以 ThisWorkbook.Path 没有值)或者工作表不包含数据 - 和然后是错误 1004。可能是其他原因导致问题吗?例如,此代码将导致错误#9
Dim a(1 To 5) As Variant: a(6) = 1查看此链接以了解错误原因#9:msdn.microsoft.com/en-us/library/aa264519(v=vs.60).aspx -
@Mat'sMug 我更改了文件名,现在我收到错误 5“无效的过程调用或参数”。调试器在相同的代码下划线。
-
尝试将
/更改为``。最好将连接的结果存储在一个变量中,这样您就可以检查它,而不是内联它。 -
@Mat'sMug 谢谢 Mat 问题解决了!