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
であったかを確認しました"-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