我在Worksheet_SelectionChange
事件中有一些非常基本和简单的 VBA 代码,如下所示:
btnB.Top = btnA.Top + btnA.Height
它在我的计算机上运行良好,但偶尔在我同事的计算机上运行。似乎在工作表周围的 5 次点击中有 3 次会产生"Expression Too Complex"
错误。其他 2 个工作没有抛出错误。我试过了:
Dim D as Double:D = btnA.Top + btnA.Height
btnB.Top = D
同样的事情,有时有效,有时会引发错误。当错误发生时,我打破并检查了D
which is 的值"-1.#IND"
。我用谷歌搜索了这个值,发现它意味着不确定。btnA.Top
大约是 11,500,所以这不是溢出问题。这个问题似乎没有押韵或理由。在 16 年的 VB 和 VBA 编程中,我从未见过或听说过这样的事情。感谢您的任何帮助/见解。
编辑完整代码:
Sub LineUpBtns()
CommandButton2.Top = CommandButton1.Top + CommandButton1.Height
CommandButton3.Top = CommandButton2.Top + CommandButton2.Height
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
LineUpBtns
End Sub