DisplayHeadingsプロパティ
シートの行列番号のヘッダ部分は通常は表示された状態になっていますが、Excelのオプションの詳細設定で変更することができます。
通常は行列番号を表示する設定になっており、その場合はシートはこのように表示されます。
ところがExcelオプションの詳細設定の「行列番号を表示する」のチェックを外すと以下のように行列番号のヘッダが非表示になります。
この設定をVBAで行う場合はWindowオブジェクトのDisplayHeadingsプロパティを利用します。
構文
参照時
Property Window.DisplayHeadings As Boolean
設定時
Property Window.DisplayHeadings = 設定値(Boolean)
親オブジェクト | Windowオブジェクトを指定します。
通常はアクティブウィンドウを指すActiveWindowを指定することが多いと思います。 |
設定値 | 行列番号を表示する場合はTrue、非表示にする場合はFalseを設定します。 |
行列番号を非表示にした場合のセルの位置
Excelを使って資料を作る人の多くは行列番号は表示されている方が都合がいいと思います。
ただ、ゲームのようなシートを使って動的にスクロールなどが頻繁に発生するような場合は行列番号が邪魔になることも考えられます。
そのような場合には非表示にしてもいいのですが、選択セルの位置が分からなくなってしまいます。
その場合は名前ボックス欄でセル位置を確認できますのでそちらを参照してください。
サンプルコード
アクティブウィンドウの行列番号が表示されていれば非表示に、非表示であれば表示するコードです。
1 2 3 |
Sub DisplayHeadingsChange() ActiveWindow.DisplayHeadings = Not ActiveWindow.DisplayHeadings End Sub |
Not演算子で元の設定値の逆を設定することで表示と非表示を反転させるようにしています。
ただ、Not演算子の書き方がわかりにくい場合は以下のように分かりやすく書いても同じ処理のコードになります。
1 2 3 4 5 6 7 |
Sub DisplayHeadingsChange2() If ActiveWindow.DisplayHeadings = True Then ActiveWindow.DisplayHeadings = False Else ActiveWindow.DisplayHeadings = True End If End Sub |