エクセルVBAで使用するコードの備忘録。VBAでExcelワークシートのスクロール可能範囲を限定するコード。
スクロール可能範囲
Excelワークシートにはスクロール可能範囲を設定することが可能です。スクロール可能範囲はその名の通りカーソルを移動できる範囲のことで、設定されているとその範囲外を選択することができなくなります。
スクロール可能範囲はWorksheetsオブジェクトのScrolLAreaプロパティに対して範囲を表す文字列(例えば”A1:Z60″みたいなもの)を与えることで設定できます。スクロール可能範囲を解除するにはScrollAreaプロパティの値を空文字列(””)に設定します。
サンプルコード
下記のコードは指定ワークシートにスクロール可能範囲を設定する際のサンプルです。意味はありませんが、サンプルとしてスクロール可能範囲を設定した直後に解除するコードも記載してあります。
コードを使用する際はカッコに囲まれた部分([***])を自分のプログラムに合わせて変更してください。
Public Sub SetScrollArea()
'--- 設定するワークシート ---'
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("[ワークシート名]")
'--- スクロール可能範囲の設定 ---'
ws.ScrollArea = "[アドレス(A1:Z60のような文字列)]"
'--- スクロール可能範囲の解除 ---'
ws.ScrollArea = ""
End Sub