我正在编写一个 Excel VBA 宏来自动执行打印任务。我要做的是存储一个工作簿的PageSetup对象,做我的事情,然后恢复初始参数。我试过这个:
Sub test()
Dim TempPageSetup As PageSetup
Set TempPageSetup = ActiveSheet.PageSetup
'Modify the ActiveSheet.PageSetup
'Print the worksheet
Set ActiveSheet.PageSetup = TempPageSetup
End Sub
但是当我尝试放回初始 pagesetup 对象时,出现“对象变量或未设置块变量”错误。工作表 pagesetup 对象是只读的吗?
我还尝试在 With activeSheet.PageSetup 语句中逐个属性地放回它。这似乎可行,但在某些时候我收到“自动化错误”并且 Excel 刚刚关闭。我一步一步地运行代码,它并不总是发生在同一个属性上。有什么解释吗?我仍在调查发生了什么。