ワークシートのスクロール範囲を制限する方法
ワークシートのスクロールできる範囲のことは、「スクロールエリア」といいます。
入力や閲覧するセル範囲が決まっている場合などにスクロールエリアに制限をかけることにより入力の効率化や、閲覧がしやすくなるとともに閲覧してほしくないデータを隠すこともできます。
この「スクロールエリア」は、Worksheet【ワークシート】オブジェクトのScrollArea【スクロールエリア】プロパティにスクロールできる範囲を設定してスクロール範囲に制限をかけます。
ScrollArea【スクロールエリア】プロパティ
ワークシートのスクロールできる範囲を設定または取得するには、Worksheet【ワークシート】オブジェクトのScrollArea【スクロールエリア】プロパティを使用します。
ScrollArea【スクロールエリア】プロパティの書式と設定値の説明
【設定】
オブジェクト.ScrollArea = 範囲
【取得】
オブジェクト.ScrollArea
- オブジェクト(必須)
スクロール範囲を設定するWorkSheet【ワークシート】オブジェクトを指定します。 - 範囲(必須)
スクロールできる範囲をA1形式の範囲参照として文字列型で設定します。
Sheet1のスクロールエリアをA1セル~H10セルの範囲に設定するコードと解説
Private Sub Workbook_Open() Worksheets("sheet1").ScrollArea = "A1:H10" End Sub
ブックが開いたときに発生するWorkBook【ワークブック】オブジェクトのOpen【オープン】イベントプロシージャーにコードを記述します。
2行目【Worksheets(“sheet1”).ScrollArea = “A1:H10″】
WorkSheet【ワークシート】オブジェクトのScrollArea【スクロールエリア】プロパティにスクロールエリアをA1形式で範囲を文字列型で指定します。
使用されているセル範囲をスクロールエリアに設定するコードと解説
Private Sub Workbook_Open() Dim 範囲 As String 範囲 = Worksheets("sheet1").UsedRange.Address Worksheets("sheet1").ScrollArea = 範囲 MsgBox "スクロール範囲は" & 範囲 & "です。" End Sub
ブックが開いたときに発生するWorkBook【ワークブック】オブジェクトのOpen【オープン】イベントプロシージャーにコードを記述します。
2行目【Dim 範囲 As String】
スクロールエリアの範囲を格納する変数「範囲」を文字列型(String)で宣言します。
3行目【範囲 = Worksheets(“sheet1”).UsedRange.Address】
WorkSheet【ワークシート】オブジェクトのUsedRange【ユーズドレンジ】プロパティを使用して使用されているセル範囲を参照してAddress【アドレス】プロパティでその範囲のセル番地を取得し変数「範囲」に代入します。
4行目【Worksheets(“sheet1”).ScrollArea = 範囲】
WorkSheet【ワークシート】オブジェクトのScrollArea【スクロールエリア】プロパティを使用して、スクロールエリアを設定します。設定値は、シートの使用されているセル範囲のアドレスが格納されている、変数「範囲」を設定します。
5行目【MsgBox “スクロール範囲は” & 範囲 & “です。”】
MsgBox関数を使用してスクロールエリアをユーザーに伝えます。
設定したスクロールエリアを解除するコードと解説
Sub スクロールエリア解除() Worksheets("sheet1").ScrollArea = "" End Sub
標準モジュールに適当な名前のSubプロシージャーを作成します。
2行目【Worksheets(“sheet1”).ScrollArea = “”】
Worksheet【ワークシート】オブジェクトのScrollArea【スクロールエリア】プロパティに長さ0の文字列(””)を設定します。
以上で、ワークシートのスクロール範囲を制限する方法についての解説を終了します。ありがとうございました。