我正在编程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刚刚关闭。我一步一步地运行代码,它并不总是在同一属性上发生。有什么解释吗?我仍在调查发生了什么。