gpt4 book ai didi

excel - 使用 VBScript 将 Excel View 更改为页面布局

转载 作者:行者123 更新时间:2023-12-02 21:24:29 24 4
gpt4 key购买 nike

我需要使用 VBScript 将 Excel 工作簿中的所有工作表更改为页面布局 View 而不是默认 View 。但是,我不知道如何在 VBS 中做到这一点。对于 VBA,我一直在使用的代码(使用 while 循环遍历每张纸)是

With ActiveWindow
.View = xlPageLayoutView
End With

这很好地满足了我的目的。但我需要在 VBS 中执行此操作。我认为这与应用程序对象有关,但我不确定。任何帮助将不胜感激。

编辑:这是我用声明和内容编写的代码示例。它基本上是迭代工作簿中的多个工作表并将它们全部设置(或尝试)到页面布局 View 。此段中缺少的是我用与 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

最佳答案

VBA 已加载 Excel 和工作簿。使用 VBS,您需要创建一个 Excel 对象并用它打开您的工作簿。此外,VBA 还为 Excel 设置定义了静态变量,您必须在 VBS 中自行定义这些变量。

Dim objExcel
Dim excelPath
Dim xlPageLayoutView=3 ' https://msdn.microsoft.com/en-us/library/office/ff838200.aspx

excelPath = "C:\scripts\servers.xlsx"
objExcel.DisplayAlerts = 0

Set objExcel = CreateObject("Excel.Application")

为了更改窗口的状态,您必须访问窗口对象。在Excel中有工作簿,其中包含工作表和Windows的集合。该应用程序还包含所有工作表中所有窗口的集合。在工作簿窗口集合中,事件窗口始终通过索引 1 访问。

Set currentWorkBook = objExcel.ActiveWorkbook
Set currentWorkSheet = currentWorkBook.Worksheets("Sheet Name Here")

currentWorkSheet.Activate

Set currentWindow = currentWorkBook.Windows(1)

currentWindow.View = xlPageLayoutView

关于excel - 使用 VBScript 将 Excel View 更改为页面布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43813946/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com