Excel VBA 语句“If Not then Else” - Else 不起作用

问题描述 投票:0回答:1

要绘制图表,我想将窗口缩放级别设置为某个值,例如 200%。

如果当前窗口缩放级别为 200,则宏开始运行。这个效果很好。

如果没有,MsgBox 应该告诉/通知用户,缩放级别将被更改,然后宏应该从该过程开始。

现在,如果缩放级别不是 200,唯一发生的就是缩放级别的更改。该过程不会自动启动。

Else
似乎不起作用。

Sub AddChart()
  '... 
  If Not ActiveWindow.Zoom = 200 Then
    MsgBox "Set Window Zoom to: 200%", vbOKCancel
  Else
  ActiveWindow.Zoom = 200
  Set ws = ActiveSheet
  With ws
  '...
  End With
  End If
End Sub
excel vba if-statement msgbox
1个回答
0
投票

您的代码测试缩放是否设置为 200。如果不是,它会警告您更改它。如果是的话,无论如何都会设置它..?

您应该使用:

If Not ActiveWindow.Zoom = 200 Then
    MsgBox "Setting Window Zoom to: 200%", vbOKOnly
    ActiveWindow.Zoom = 200
End If
© www.soinside.com 2019 - 2024. All rights reserved.