即効テクニック |
対象ウィンドウがワークシートかマクロシートのとき、FreezePanesプロパティにTrueを設定すると、選択範囲の左上を基準にして、ウィンドウ枠を固定します。Falseでウィンドウ枠の固定を解除します。分割の基準となる位置は、SplitRow/SplitColumnプロパティで取得できます。設定すると、ウィンドウ枠の固定ではなく、分割された状態になります。 構文 Object.FreezePanes 設定/取得 設定項目 内容 Object Windowオブジェクト [省略不可] 次のサンプルは、InputBoxメソッドで指定したセルを基準に、ウィンドウ枠を固定します。●サンプル●
Sub FreezePanesSamp1() Dim myRange As Range Set myRange = Application.InputBox( _ Prompt:="ウィンドウ枠を固定するポイントを選択してください", _ Type:=8) '---ウィンドウ枠を固定する基準セルを指定 '---(1)指定したセルを選択します。 myRange.Select With ActiveWindow '---(2)一旦、ウィンドウ枠固定を解除します .FreezePanes = False '---(3)選択セルの左上でウィンドウ枠を固定します。 .FreezePanes = True MsgBox .SplitRow & "行" & Chr(13) & _ .SplitColumn & "列 を基準にウィンドウ枠を固定しました" End With End Sub
(1)のステートメントで選択したセル範囲の左上を基準に、(3)のステートメントでウィンドウ枠を固定しています。 ●注意● ウィンドウ枠を固定する基準を変更する際には、(2)のステートメントのように、一旦ウィンドウ枠の固定を解除する必要があります。なおこのサンプルは、ウィンドウ枠が分割されたワークシートでは正常に動作しませんので注意してください。