締切済み

Excel VBAでスクロールバーから行番号を取得

  • 困ってます
  • 質問No.9599986
  • 閲覧数127
  • ありがとう数0
  • 気になる数1
  • 回答数1
  • コメント数0

お礼率 62% (5/8)

Excelのワークシートの縦のスクロールバーをクリックすると、行番号が表示されますが、これをVBAで同時に取得できませんか。スクロールバーにはイベントがないことは理解していますが…。特定な行が最上位となったとき、固定枠内のセルを書き換えることを考えています。

回答 (全1件)

  • 回答No.1

ベストアンサー率 60% (186/307)

Excel(エクセル) カテゴリマスター
表示されているシートの
表示されているセル範囲の開始行、開始列でよければ、
Sub Sample()
 With ActiveWindow
  MsgBox (.ScrollRow)
  MsgBox (.ScrollColumn)
 End With
End Sub
といったコードで取得できます。
補足コメント
nobsan60

お礼率 62% (5/8)

質問は、縦のスクロールバーをクリックまたは移動したとき、回答のマクロを実行する方法なのです。APIなどを使ってもありませんか。現在、ワークシートの画面をダブルクリックして、次のイベントを使っています。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Row < 36 Then
Range("B71:S71").Copy Range("B3:S3")
ActiveWindow.ScrollRow = 4 '4行
Else
Range("B36:S36").Copy Range("B3:S3")
ActiveWindow.ScrollRow = 37 '37行
End If
End Sub
投稿日時 - 2019-03-26 06:42:21
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

ピックアップ

ページ先頭へ