【VBAリファレンス|実務向け】キーボードの操作で行列の非表示/再表示を切り替える

スポンサーリンク

1. 導入

Excelでのデータ集計や分析において、一時的に不要な行や列を「非表示」にする場面は非常に多いものです。しかし、いちいちマウスを右クリックしてメニューから「非表示」を選択するのは手間がかかり、作業のリズムが中断されてしまいます。今回は、キーボード操作のみで瞬時に行列の表示・非表示を切り替えるショートカットテクニックを紹介します。これを習得することで、データ編集のスピードが劇的に向上します。

2. 基礎知識

Excelの行列非表示機能とは、行や列を削除するのではなく、あくまで画面上から見えなくする機能です。データ自体は保持されているため、計算式やグラフへの影響はありません。
ショートカットキーを使用する際の重要な注意点として、これらは「メインキーボード(数字キー)」を使用する必要があります。テンキー(数字入力用の右側のキー)では反応しないことが多いため、必ずキーボード上段の数字キーを使ってください。

3. 実装/解決策

以下の手順で操作を行います。

・行を非表示にする:行を選択し、[Ctrl] + [9] を押す
・列を非表示にする:列を選択し、[Ctrl] + [0] を押す
・行を再表示する:非表示になっている行を挟むように上下の行を選択し、[Ctrl] + [Shift] + [9] を押す
・列を再表示する:非表示になっている列を挟むように左右の列を選択し、[Ctrl] + [Shift] + [0] を押す

4. サンプルプログラム

ショートカットを覚えるのが一番効率的ですが、VBAを使って「アクティブな行・列を特定のキー操作で切り替えたい」というニーズがある場合、以下のようなコードを標準モジュールに登録しておくと便利です。

Sub ToggleRowVisibility()
‘ アクティブな行の表示・非表示を反転させるプロシージャ
With ActiveCell.EntireRow
If .Hidden = True Then
.Hidden = False ‘ 非表示なら表示する
Else
.Hidden = True ‘ 表示中なら非表示にする
End If
End With
End Sub

Sub ToggleColumnVisibility()
‘ アクティブな列の表示・非表示を反転させるプロシージャ
With ActiveCell.EntireColumn
If .Hidden = True Then
.Hidden = False ‘ 非表示なら表示する
Else
.Hidden = True ‘ 表示中なら非表示にする
End If
End With
End Sub

※このコードを「マクロの登録」からショートカットキー(例: [Ctrl]+[Shift]+[R]など)に割り当てると、さらに作業が快適になります。

5. 応用・注意点

現場で最も困るのが、「1行目やA列が非表示になり、選択できなくて再表示できない」というケースです。この場合、マウスで範囲選択をしようとしても、非表示の箇所を「挟む」ことができません。
そんな時は、Excel左上の[名前ボックス](セル番地が表示されている枠)に直接「A1」と入力してEnterを押してください。強制的に非表示のセルが選択状態になります。その後、上記で紹介した再表示のショートカットキーを押せば、隠れていた行や列が即座に呼び出せます。このテクニックは、複雑なシートを扱う際に非常に重宝するので、ぜひ覚えておいてください。

タイトルとURLをコピーしました