• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:重ねてよろしくお願いします)

縦のスクロールバーをクリックまたは移動した際に、回答のマクロを実行する方法はありますか?

このQ&Aのポイント
  • 現在、ワークシートの画面をダブルクリックして次のイベントを使って回答のマクロを実行しています。
  • しかし、APIなどを使用する方法は存在するのでしょうか?
  • また、縦のスクロールバーをクリックまたは移動した際にマクロを実行するための方法があれば教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • mt2015
  • ベストアンサー率49% (258/524)
回答No.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

関連するQ&A