如何通过Access VBA在Excel中设置ActiveWindow.Zoom?

How to Set ActiveWindow.Zoom in Excel Through Access VBA?

我正在尝试在VBA中创建一个宏,该宏将通过Access VBA格式化Excel工作表。 我在Access中遇到了一些意外,这些意外无法识别某些Excel VBA命令,例如.Select.Interior.Color.ActiveWindow.Zoom。 我解决了前两个问题,但是有人可以将Active Zoom设置为90%吗?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Sub ExcelMacro()

Dim xlApp As Object
Dim xlWB As Object

filepath ="\\\\dom1...xlsm"

Set xlApp = CreateObject("Excel.Application")

xlApp.Workbooks.Open filepath

xlApp.Visible = True

xlApp.Application.DisplayAlerts = True

Set xlWB = xlApp.ActiveWorkbook

xlWB.Sheets(1).ActiveWindow.Zoom = 90

    With xlWB.Sheets(1).Cells
        .Font.Name ="Calibri"
        .EntireColumn.Autofit
    End With

    With xlWB.Sheets(1).range("A1").Entirerow
        .Interior.ColorIndex = 15
        .Font.Bold = True
    End With

'xlApp.Application.DisplayAlerts = True
Set xlApp = Nothing
Set xlWB = Nothing

End Sub

ActiveWindow是Excel应用程序对象的属性。

您的代码尝试从工作表对象中使用它...

1
xlWB.Sheets(1).ActiveWindow.Zoom = 90

当我用自己的工作表对象测试相似的代码时,Access抛出错误#438,"对象不支持此属性或方法"。

如果从应用程序对象变量开始,则不应出现该错误...

1
xlApp.ActiveWindow.Zoom = 90