- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:重ねてよろしくお願いします)
縦のスクロールバーをクリックまたは移動した際に、回答のマクロを実行する方法はありますか?
このQ&Aのポイント
- 現在、ワークシートの画面をダブルクリックして次のイベントを使って回答のマクロを実行しています。
- しかし、APIなどを使用する方法は存在するのでしょうか?
- また、縦のスクロールバーをクリックまたは移動した際にマクロを実行するための方法があれば教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
スクロールバーのイベントは無いと思いますので、定周期でActiveWindow.ScrollRowの変化を監視するしかないのでは? 以下の例では1秒周期でActiveWindow.ScrollRowの値を監視しています。 監視を止めるには「SampleStop」を起動してください。 Dim nPreRow As Long Dim dOnTime As Date Sub Sample() nNowRow = ActiveWindow.ScrollRow If nNowRow <> nPreRow Then If nNowRow < 36 Then Range("B71:S71").Copy Range("B3:S3") ActiveWindow.ScrollRow = 4 '4行 nPreRow = 4 Else Range("B36:S36").Copy Range("B3:S3") ActiveWindow.ScrollRow = 37 '37行 nPreRow = 37 End If End If dOnTime = Now() + TimeValue("00:00:01") Application.OnTime dOnTime, "Sample" End Sub Sub SampleStop() Application.OnTime dOnTime, "Sample", , False End Sub