• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:行の指定文字位置へ画面をスクロール)

VBAコードでボタンクリックにより画面をスクロールする方法とは?

このQ&Aのポイント
  • 質問者は、VBAコードによるボタンクリックで特定の行を先頭にスクロールする方法を知りたいとしています。
  • 現在のコードでは、行の挿入によりスクロールする行が変更されてしまうため、特定の行を先頭に保つ方法を求めています。
  • 質問者は、指定文字を使用して特定の行を先頭にスクロールするVBAコードを作成したいとしています。

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.3

>列を変えずに行のみを"江藤"にスクロールしたいのですが? どちらでも Sub 移動3() Dim myRng As Range, strName As String strName = "江藤" With Worksheets("sheet1") Set myRng = .Columns(1).Find(What:=strName, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, MatchByte:=False) If myRng Is Nothing Then MsgBox strName & "は、見つかりません", 16 Exit Sub End If Application.Goto reference:=.Cells(myRng.Row, ActiveWindow.ScrollColumn), Scroll:=True End With End Sub Sub 移動4() Dim myRng As Range, strName As String strName = "江藤" Set myRng = Columns(1).Find(What:=strName, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, MatchByte:=False) If myRng Is Nothing Then MsgBox strName & "は、見つかりません", 16 Exit Sub End If ActiveWindow.ScrollRow = myRng.Row End Sub

kuma0220
質問者

お礼

有難うございます。期待通りにスクロールでき作業する上で非常に助かりました。感謝します。

その他の回答 (2)

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

こちらも参考に Sub 移動3()   Dim myRng As Range, strName As String   strName = "江藤"   Set myRng = Worksheets("sheet1").Columns(1).Find(What:=strName, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, MatchByte:=False)   If myRng Is Nothing Then     MsgBox strName & "は、見つかりません", 16     Exit Sub   End If   Application.Goto reference:=myRng, Scroll:=True End Sub

kuma0220
質問者

補足

有難うございます。説明不足で申し訳ありません。 現在ウインドウ枠を固定しており移動3クリックで列が全表示されます。列を変えずに行のみを"江藤"にスクロールしたいのですが? 宜しくお願いします。

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.1

>指定文字"江藤"を代入してコード・・・ では"江藤"を検索すれば良いかと Sub 移動2() Dim myRng As Range,strName With Worksheets("sheet1") Set myRng = .Columns(1).Find(What:="江藤", LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, MatchByte:=False) Application.Goto reference:=myRng, Scroll:=True End With End Sub

関連するQ&A