【发布时间】:2023-03-31 10:15:01
【问题描述】:
我需要使用 VBScript 将 Excel 工作簿中的所有工作表更改为页面布局视图而不是默认视图。但是,我无法弄清楚如何在 VBS 中做到这一点。使用 VBA,我一直在使用的代码(使用 while 循环遍历每张纸)是
With ActiveWindow
.View = xlPageLayoutView
End With
这很好地满足了我的目的。但我需要在 VBS 中执行此操作。我认为它与 Application 对象有关,但我不确定。任何帮助将不胜感激。
编辑:这是我用声明和东西编写的代码示例。它基本上是迭代工作簿中的许多工作表并将它们全部(或尝试)设置为页面布局视图。此段中缺少的是我使用与 Names() 中的条目匹配的新工作表填充工作簿的子项。
Dim destFile, objWorkbook
Set destFile = CreateObject("Excel.Application")
Set objWorkbook = destFile.Workbooks.Add()
objWorkBook.SaveAs(strPath)
Sub OverNames()
For i = 1 to 9
SetPagelayout(i)
Next
End Sub
Sub SetPageLayout(hNum)
Dim houseSheet, sheetName
'retrieves sheet name from array Names()
sheetName = Names(hNum, 0)
Set houseSheet = destFile.Worksheets(sheetName)
houseSheet.Window.View = xlPageLayoutView
End Sub
【问题讨论】: