web-dev-qa-db-ja.com

ExcelVBA-範囲内のセルがクリックされて選択された場合にマクロを実行する

セルが範囲内でクリックされたかどうかを識別して、マクロを実行できるルーチンが必要です。私はこれを部分的に解決しました。

私の問題は、セルが選択されたときではなく、セルがクリックされたときに値を切り替える必要があるということです。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)    

If Not Intersect(Target, Range(testRange) Is Nothing Then
   'Cell was Clicked
End If

End Sub

セルが選択されていない限り、私のためだけに機能します。

私に何ができる?マウスクリックが行われ、セルが選択されているかどうかを確認する機能はありますか?

3
Lars_Ullrich99

セルB9がクリックされたときに、Hello()というマクロを実行するとします。

最初にB9を選択し、B9へのハイパーリンクを挿入します。

enter image description here

(これをクリックしても実際にはどこにもジャンプしません)

次に、ワークシートのコード領域に次のように挿入します。

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    Call Hello
End Sub
1
Gary's Student