Excel 2007 VBA缩放(不使用select?)
好的,所以我从来不需要在VBA中做任何我需要激活工作表或select一个单元的任何事情。 但是现在,我正在试图弄清楚如何在一大堆工作表上缩放到100%,而且我看到的所有代码(谷歌search结果,包括本网站的答案)似乎都是先select一个表格:
ActiveWindow.Zoom = 100
但是,我确实在OzGrid上find了一些代码,这似乎意味着可以在不select表单的情况下进行操作:
Sht.PageSetup.Zoom = 100
(虽然上面我们有Set Sht = ActiveSheet)我试过了
Set Sht = ThisWorkbook.Worksheets("Sheet1") Sht.PageSetup.Zoom = 150
但没有任何反应
那么,这可能吗? 或者我必须激活一个工作表才能进行缩放? 我读过很多次,这是不好的编程习惯,除非你绝对必须这样做。
是的,我相信缩放只是对活动工作表有影响。
但是,如果您不想“看到”每张纸被激活并放大,您可以添加该行
Application.ScreenUpdating = False
在您的缩放代码之前,然后完成之后:
Application.ScreenUpdating = True
设置Application.Screenupdating = False
不会解决您的问题。 如果您select工作表或激活工作表, Application.screenupdating
将被设置为true。