VBA - IF语句不起作用

时间:2017-11-28 10:52:57

标签: vba if-statement ms-word

有时我想知道为什么我甚至编程或为什么我使用VBA ......我有以下代码:

Private Sub CommandButton1_Click()
    Dim bSuccess As Boolean
    bSuccess = modGenerateGRList.GenerateGRList

    bSuccess = False

    If bSuccess Then
        CommandButton1.Select
        Selection.Delete
    End If
End Sub

它一直在删除我的按钮。当被叫funktion成功时,它应该删除我的按钮。 If bSuccess ThenIf bSuccess = True Then如何才能生效?

我在if之前使用了MsgBox bSuccess一行,告诉我bSuccess为false并且仍然会删除我的按钮。

当我删除行bSuccess = modGenerateGRList.GenerateGRList时,我的代码运行正常。函数modGenerateGRList.GenerateGRList如何影响我的代码?

//编辑

我意识到,即使我在

之前加上评论标记
CommandButton1.Select
Selection.Delete

它仍会删除我的按钮。

我保存了我的更改,杀死了我的所有Word进程,它仍然删除了我的按钮。它似乎以某种方式执行旧代码,即使我在另一台PC上运行它。

2 个答案:

答案 0 :(得分:1)

如果您正在运行VBA代码,您不知道它来自哪里,或者您有一些不断以某种方式重新定义的全局变量,请执行以下两个步骤:

  • Ctrl + G
  • 撰写End并按 Enter

那会杀死任何东西。

答案 1 :(得分:0)

当发生类似这样的奇怪事情时,我会触及这个VBA反编译器...根据我的经验,它已经在很多场合解决了你所描述的问题。

试一试:http://cpap.com.br/orlando/VBADecompilerMore.asp