第70回.ウィンド枠の固定(FreezePanes)
ワークシートの最初の行や列に見出しが含まれる場合、
ウィンドウ枠を固定することで、見出しの行や列を固定されシートをスクロールしても見出しが表示されたままにできます。
通常は事前にウィンドウ枠を固定しておけばすみますが、
マクロVBAで作成したシートでは、必要に応じてVBAでウィンドウ枠を固定します。
VBAでウィンドウ枠の固定を変更する場合は、
WindowオブジェクトのFreezePanesプロパティの値を変更することで行います。
Window.FreezePanesプロパティ
アクティブセルの上・左が固定されます。
Windowオブジェクトのプロパティが変更できるのは、
アクティブシートに対してのみ設定可能です。
つまり、
ActiveWindow.FreezePanes = True
Windows("Book1").FreezePanes = True
このような指定になります。
従って、
このような指定はできません。
また、アクティブセルの位置で固定されますので、
事前に、固定位置に合わせて、セルをアクティブにしておく必要があります。
注意
新たに、別の位置でウィンドウ枠を固定しようとしても変更されません。
ウィンドウ枠の固定位置を変更する場合は、
固定を解除してから、再度固定しなければなりません。
使用例
Workbooks("Book1.xls").Worksheets("Sheet2").Activate Range("B2").Select ActiveWindow.FreezePanes = False ActiveWindow.FreezePanes = True |
対象のシートをアクティブにしてから、
固定するセルを選択し、
念の為、ウィンドウ枠の固定を解除してから、
ウィンドウ枠を固定しています。

実行後は、SheetのB2セルが選択状態となり、この位置でウィンドウ枠が固定されます。
データの行数・列数が多い時に、ウィンドウ枠が固定されていないと非常に使いづらいシートとなります。
マクロVBAで作成したシートを使う時に、毎回手作業でウィンドウ枠を固定したのでは効率が悪くなります。
マクロVBAで作成するシートも、使用者の利便性を考慮して作成するようにしてください。
同じテーマ「マクロVBA入門」の記事
第67回.総合練習問題7
第68回.シートの保護、ブックの保護(Protect)
第69回.シートの非表示(Visible)
第70回.ウィンド枠の固定(FreezePanes)
第71回.印刷(PrintOut)
第72回.印刷プレビュー(PrintPreview)
第73回.ページ設定(PageSetup)
第74回.ファイルを開くダイアログ(GetOpenFilename)
第75回.名前を付けて保存ダイアログ(GetSaveAsFilename)
第76回.ファイルダイアログ(FileDialog)
第77回.組み込みダイアログ(Dialogs,xlDialogPrint)
新着記事 ・・・新着記事一覧を見る
VBAクラスの作り方:独自Rangeっぽいものを作ってみた|VBA技術解説(2月16日)
VBAクラスの作り方:列名のプロパティを自動作成する|VBA技術解説(2月14日)
VBAクラスの作り方:列名の入力支援と列移動対応|VBA技術解説(2月11日)
クラスを使って他ブックのイベントを補足する|VBA技術解説(2月6日)
Excelアドインの作成と登録について|VBA技術解説(2月3日)
参照設定、CreateObject、オブジェクト式の一覧|VBA技術解説(1月20日)
VBAでファイルを規定のアプリで開く方法|VBA技術解説(1月20日)
ドキュメントプロパティ(BuiltinDocumentProperties,CustomDocumentProperties)|VBA技術解説(1月19日)
他ブックへのリンクエラーを探し解除|VBAサンプル集(1月15日)
特殊フォルダの取得(WScript.Shell,SpecialFolders)|VBA技術解説(1月1日)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.変数とデータ型(Dim)|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.RangeとCellsの使い方|ExcelマクロVBA入門
6.マクロって何?VBAって何?|ExcelマクロVBA入門
7.繰り返し処理(For Next)|ExcelマクロVBA入門
8.とにかく書いて見よう(Sub,End Sub)|VBA入門
9.定数と型宣言文字(Const)|ExcelマクロVBA入門
10.ひらがな⇔カタカナの変換|エクセル基本操作
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。