- ベストアンサー
EXCELでボタンによりスクロール
EXCELで1行目の C1セルにボタンを設ける。 そのボタンを押すごとに5行目以降がn行ずつスクロール(繰り上がって)して表示される。 これを実現する簡単な方法を教えていただきたい。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
マクロを作るしかないでしょう。 マクロの記録で、一通り、記録させて あとは、手直しですね。
その他の回答 (2)
- nishi6
- ベストアンサー率67% (869/1280)
Sheet1で行う例です。スクロールにはアップとダウンがあるので、スピンボタンを使ってみました。 コントロールツールボックスから、スピンボタンをSheet1に貼り付けます。場所は1~4行目の範囲にします。 スピンボタンの三角は上下を向いているようにします。 また、ウインドウ→ウインドウ枠の固定で5行目からスクロール可能な状態にします。 スピンボタン(SpinButton1)のプロパティを決めます。 スピンボタンを右クリックして、プロパティを選択。 5行目から30000行まで、20行単位でスクロールさせる設定例です。 Min=5 Max=30000 SmallChange=20 とします。 Sheet1のコードウインドウに下記コードを貼り付けます。 ↓ Private Sub SpinButton1_Change() ActiveWindow.ScrollRow = SpinButton1 End Sub
お礼
どうもありがとうございました。 たいへんさんこうになりました。
- imogasi
- ベストアンサー率27% (4737/17070)
操作による設定等で実現するのは、不可能でしょう。 それでVBAを使う。ワークシートに(コントロールツールボックスの方から)ボタンを1つ貼り付ける。 Mojule1に下記を貼り付ける。 アクチブセルをA1とかどこかに置いて、ボタンをクリックすると、A11(n=10)がアクチブセルになり、ボタンもそれなりに下へ行きます。 質問のままだと、直ぐボタンが隠れ探すのに手間がかかるからこの様にする。 但し出来るというだけで、実用的かどうかは疑っています。各行高は同じと仮定しています。 Sub ボタン1_Click() Application.Goto ActiveCell.Offset(10, 0) a = Worksheets("sheet1").DrawingObjects(1).Top Worksheets("sheet1").DrawingObjects(1).Top = a + Cells(1, 1).Height * 10 End Sub
お礼
ヒントとして利用させてもらいました。どうもありがとうございました。
お礼
素朴な回答ですがたしかにそうかなと実際に体験し理解しました。おかげでうまくいきました.どうもありがとうございました。