Excelで減算を行う方法: すべての方法を説明 (2026)
Excelで列を非表示にするのは、キーの組み合わせを記憶すると約半秒で済みます。 非表示にする列で少なくとも1つのセルを選択し、WindowsではCtrl + 0(ゼロ、アルファベットのOではありません)を、MacではCommand + 0を押してください。 列は見えなくなりますが、すべての数式、値、書式設定がそのまま残ります。
このキーボードショートカットは、Microsoft Excelの日常的な非表示作業のおよそ90%を処理しますが、すべての状況で最適なツールとは限りません。 一部のユーザーは、筋肉の記憶から右クリックメニューを好みます。他の人は、複数の列を一度に非表示にしたり、データを展開可能なグループに折りたたんだり、曜日に基づいて特定の列を非表示にするワンクリックボタンを作成したりする必要があります。 各シナリオには最適な方法があり、Excelには、現在のタスクに応じて列の表示を管理するためのいくつかの方法があります。
この投稿では、Excelで1つまたは複数の列を非表示にするためのすべての信頼できる方法を、最も速いキーボードショートカットから再利用可能なマクロまで説明しています。 また、よくある頭痛の原因、非表示になった列が復活しない、列Aが消えたまま戻らない、Excelファイルが他のユーザーとメールや共有された際に表示設定が失われるなどをカバーしています。 ソフトウェアによって生成されたスプレッドシートで列の非表示を自動化する必要があるチーム向けに、最後のセクションでIronXL .NETライブラリがコード内で同じ操作をどのように行うかを示しています。 四半期報告書を整理するため、スプレッドシートのクリア版を共有する、または中間計算で埋まった補助列を単に片付けることが目的であるかどうかに関係なく、Iron Softwareのコンテンツチームのこれらの技術は、一般的な職場のユーザーが遭遇するすべての状況をカバーします。
以下の各方法には、Excel 2016、2019、2021、Microsoft 365、Excel for the webで画面に表示されるビジュアルキューに一致する推奨スクリーンショットが含まれています。
方法1: キーボードショートカット(最速)
ショートカット: Ctrl + 0 (Windows) または Command + 0 (Mac)
これはExcelで列を非表示にする最速の方法です。 次の手順で説明します:
- 非表示にする列内の任意のセルをクリックするか、上部の列ヘッダーをクリックして全体の列を選択します。
-
Windowsでは制御キーを押下し、MacではCmd + 0を押してください。
- 列が直ちに消えます。
複数の隣接する列を一度に非表示にしたい場合、最初の列の文字をクリックし、Shiftキーを押しながら最後の列の文字をクリックして範囲を強調表示します。 キーの組み合わせを一度だけ押すと、すべてを一緒に非表示にします。 同じショートカットは、単一の列や複数の列に対して同時に動作します。

一般的な注意点:かつて列を表示させるためのキーボードショートカットはCtrl + Shift + 0でしたが、MicrosoftはほとんどのWindowsインストールでそれを無効にしました。なぜなら、キーボードレイアウトを切り替えるシステムショートカットと競合したためです。 通常、右クリックメニューやリボンが必要になります。
方法2: 右クリックコンテキストメニュー
右クリック方法は、発見しやすいオプションとして、なぜ多くのチュートリアルがこの方法を推奨しているかという理由です。 また、練習しなくても記憶しやすいため、Microsoft Excelのどのバージョンでも次の手順で動作します:
- 最初の列の上部にある列ヘッダーをクリックして全体の列を選択します。 クリックする前にカーソルが小さな黒い下向き矢印に変わることを確認してください。
- 強調表示された列の内側で右クリックします。
- 表示されたコンテキストメニューから非表示を選択します。

複数の列を非表示にするには、先に隣接する列の列ヘッダーをクリックドラッグして選択するか、ctrlを押しながら個別の列の文字をクリックして非隣接列を選択します。 右クリックして非表示を選ぶと、複数の列を同時に非表示にします。
この方法は、Web用Excelでも同様に機能しますが、ブラウザでの右クリックメニューは表示に少し時間がかかることがあります。
方法3: ホームタブリボン
リボン方式は、タッチスクリーンで作業するときや、スタイラスを使ってSurfaceやExcelを実行するタブレットで使用する場合など、キーボードショートカットが利用できないときに便利です。
- 非表示にする列や列を列文字をクリックして選択します。
-
リボンのホームタブに移動します。
-
リボンの右側付近、セルの書式設定の近くにあるセルグループで書式をクリックします。
- 非表示と再表示の上にマウスを移動させます。
- 列を非表示をクリックします。

同じサブメニューには、行を非表示、シートを非表示、列を再表示、行を再表示、シートを再表示も含まれています。 このメニューを心に刻んでおくことは便利です。というのも、列と行の両方に関連する視覚性のあるすべてのアクションを一箇所にまとめているからです。
方法4: 非隣接列の非表示
隣接していない列を非表示にすること、例えば列B、D、およびFを非表示にし、列CとEを表示したままにすることは、外部共有のためにレポートをサニタイズするときによく求められる要求です。 コツは、非表示コマンドを適用する前に多数の列を一度に選択することです。
- 非表示にする最初の列(列B)の列ヘッダーをクリックします。
-
Ctrlキー(またはMacではCmd)を押したまま、追加の列文字(DとF)をクリックします。
- 3つの列がすべて選択された状態で、強調表示された列文字のいずれかを右クリックして列を非表示を選ぶか、Ctrl + 0を押します。

選択されたすべての列は一度に非表示になります。 非隣接列を非表示にするこのトリックは、特に、何十もの補助列が含まれる広いスプレッドシートで作業しているとき、各列を1つずつ非表示にするのに比べてかなりの時間を節約します。
方法5: 名前ボックスを使用して列を非表示にする
名前ボックスは数式バーの左にある小さな入力フィールドです。 スクロールせずに、単一の列または範囲を直接ターゲットにすることができます。
- 名前ボックスをクリックします。
- 対象の最初の列をH:H、またはHからKをキャプチャするにはH:K(Kが選択範囲の最後の列になる)などの列参照を入力します。
- Enterを押します。
- Ctrl + 0を押すか、右クリックして非表示を選択します。
この方法は、列ZZを過ぎてスクロールするスプレッドシートで作業するときに輝きます。 AB:ABを入力してEnterを押すのは、横に100列をスクロールして正しいヘッダー文字を見つけるよりも速いです。
方法6: 折りたたみ可能な非表示のために列をグループ化する
列を一時的に非表示にして頻繁にビューに戻す必要がある場合、グループ化機能がより良い選択です。 列ヘッダーの上に小さな+または−ボタンが追加され、誰でもクリック一つでグループを展開または折りたたむことができます。
- グループ化する列を選びます。
-
データタブに進みます。
-
アウトラインセクション内のグループボタンをクリックします。
- 選択された列の上にブラケットが現れ、それを折りたたむ−ボタンと展開する+ボタンがついています。
グループ化された列は折りたたまれたときに非表示列のように動作しますが、何かが折りたたまれていることを示す明示的な視覚的インジケーターを残し、列ヘッダー行で文字がCからGにスキップする理由について同僚に一般的な混乱を防ぎます。 グループはまたネストすることができ、同じデータセットの詳細ビューとサマリービューを可能にします。 同じグループ化機能は、財務モデル内で繰り返し詳細ブロックを折りたたむのに便利な行をグループ化するためにも機能します。
グループを削除するには、列を選択し、データタブでグループ解除をクリックします。
方法7: 繰り返し可能な非表示のためのVBAマクロ
毎週更新されるスプレッドシートには、送信前に非表示にする必要がある同じセットの補助列がしばしばあります。 マクロを記録するとその作業を完全に取り除きます。 次の手順で作成する方法を示します:
-
Visual Basicエディターを開くにはAlt + F11を押します。
- 挿入 > モジュールをクリックします。
- 次のコードを貼り付けます。
Sub HideHelperColumns()
Columns("H:K").EntireColumn.Hidden = True
Columns("Q:R").EntireColumn.Hidden = True
End Sub
Sub HideHelperColumns()
Columns("H:K").EntireColumn.Hidden = True
Columns("Q:R").EntireColumn.Hidden = True
End Sub
Sub HideHelperColumns()
Columns("H:K").EntireColumn.Hidden = True
Columns("Q:R").EntireColumn.Hidden = True
End Sub
- エディターを閉じ、マクロをボタンまたはキーボードショートカットに割り当てます。
非表示を解除するには、関連行でTrueをFalseに変更してマクロを再実行するか、または逆の操作を行う別のShowHelperColumnsマクロを作成します。 マクロは、同じコンピューター上のすべてのスプレッドシートで実行できるように、個人用マクロブックに保存できます。
注: マクロを含むファイルは、.XLSXではなく.XLSMとして保存する必要があります。 標準フォーマットで保存すると、警告なしにマクロが削除されます。
Excelで列を再表示する方法
非表示にすることはワークフローの半分に過ぎません。 隠された列を戻す信頼できる3つの方法があります。 同じ論理は、行を再表示する場合にも適用されます:各方法内で"列"を"行"に置き換えるだけです。
方法A: 隣接する列を選択して再表示。 隠された範囲の左にある列の文字をクリックし、Shiftキーを押しながら右の列の文字をクリックします。 選択を右クリックし、再表示を選びます。
方法B:すべての列を選択します。 Ctrl + Aを押してスプレッドシート全体を選択し、任意の列の文字を右クリックして列の再表示を選びます。 すべての隠された列が一度に再表示されます。
方法C:リボンを使用します。 周辺の列を選択し、ホーム > 書式 > 非表示と再表示 > 列の再表示に移動します。
列Aを再表示する方法(難しい状況)
列Aは左に列がないため特別な場合です。 標準の"隣接する列を選択する"トリックは、列Bしか選択できないため失敗します。
信頼性のある解決策:
-
数式バーの左にある名前ボックスの内側をクリックします。
- A1を入力し、Enterを押します。 列が隠されていても、セルが選択されます。
- ホーム > 書式 > 非表示と再表示 > 列の再表示に移動します。
列Aは即座に再表示されます。 同じトリックは、隣接する両方を選択することが困難な単一の隠れ列に対しても機能します。
では、行はどうですか? 同じ方法、異なる方向
Microsoft Excelでは、列を非表示にするのと同じくらいカンタンに行を非表示にすることができます。 上記のすべての技術は、行方向にも同様に機能します。 行を非表示にするキーボードショートカットはCtrl + 9であり、右クリックメニューには、行番号を選択したときに非表示オプションが表示されます。 リボンのパスは同じです:ホーム > 書式 > 非表示と再表示 > 行を非表示または行を再表示。
大量に行を素早く非表示にするには、隣接する行についてはShiftキーを、非隣接の場合は制御キーを使用して複数の行番号を選択し、上記のいずれかの方法を適用します。 グループ化機能はまた同じデータタブボタンを通じて行をグループ化することをサポートし、折りたたみブラケットがワークシートの左側に現れるのではなく、ヘッダーの上に現れます。
短く言えば、ある方向で機能するものはすべて他の方向でも機能します。 両方向を知っていることで、すでに記憶済みの行と列を管理するためのショートカットの価値が倍増します。
よくある問題とトラブルシューティング
ファイルが共有されたときに隠された列が再び現れます
隠された列は、通常の保存やメール、またはOneDriveへのアップロードで保持されますが、他のユーザーがすべての行と列を選択して再表示をクリックすると再び表示されます。 Excelファイルを共有する前に機密データを確実に削除するには、列を非表示にする代わりに削除するか、ファイル > 情報 > ドキュメントの検査を使用して隠れたコンテンツを自動的に見つけて削除します。
隠された列が印刷されます
デフォルトでは、Excelは印刷時に隠された列をスキップします。これが大抵望ましい動作です。非表示の列が印刷プレビューに現れる場合は、レイアウトページ > 印刷領域で、視覚性設定を上書きする固定範囲が設定されているか確認してください。
フィルタリングは非表示のように見えますが、異なる方法で動作します
データ > フィルターを通じて適用されたフィルターは基準に基づいて行を非表示にし、列の視覚性には干渉しません。 列の非表示が自動的に解除されるように見える場合、問題はおそらくフィルターがクリアされたことであり、列が再び見えるようになったわけではありません。 ヘッダー行の小さなフィルター矢印を確認してください。
データがコピーされるときに隠された列が現れます
隠された列を含む範囲からデータを貼り付けると、それらの列も貼り付けられます。 表示されているセルのみをコピーするには、範囲を選択し、Alt + ;(セミコロン)を押して表示されているセルのみを選択し、コピーして貼り付けます。
ショートカット Ctrl + 0 が何もしません
一部のWindowsシステムでは、Ctrl + 0がキーボードレイアウトを切り替えるための言語バーショートカットによってインターセプトされます。 Excelのショートカットを復元するには、Windows設定 > 時刻と言語 > 言語 > 詳細キーボード設定 > 入力言語のホットキーに移動し、競合するショートカットを無効にするか、右クリックメニューを使用してください。
保護されたワークシートは非表示をブロックします
非表示オプションがグレーアウトする場合、ワークシートが保護されている可能性があります。 レビュー > シートの保護解除に移動し、パスワードが設定されている場合は入力してください。 保護が解除されると、非表示は通常通りに動作します。
凍結ペインが隠れた列と不快な相互作用を起こす
凍結ペインの一部である列を非表示にすると、凍結された表示が予測できない動作をすることがあります。 表示 > ペインの凍結 > ペインの凍結解除を使ってペインを解凍し、列を非表示にした後に再び凍結すると、通常、問題が解消されます。
隠すか削除するかグループ化するか
適切なアプローチの選択は次に何が行われるかによって決まります。 下記の表が決定をまとめています:
| 目標 |最適な方法| |---|---| |一時的にビューを整理する|隠すかグループ化機能を使う| |機密データを恒久的に削除する|列を削除する| |視聴者にオンデマンドで展開/折りたたむことを許可する|グループ化する| |数式で参照される中間計算を非表示にする|非表示にする(削除すると数式が壊れます)| |他のユーザーに送信する前にスプレッドシートをサニタイズする|削除と検査ドキュメントを使用する|
よくある間違いは、会社外にファイルを送信する前に機密情報を含んだ列を非表示にすることです。 非表示は削除を意味しません。 基本的なExcel知識を持つ誰でも、すべての列を5秒未満で再表示できます。 本当に機密性のあるデータは、ファイルが社外に出る前に削除するべきです、またはサニタイズされたコピーをエクスポートすべきです。
開発者向け:IronXLでプログラムによって列を非表示にする
.NETアプリケーションからExcelファイルを生成するチームにとって、手作業で列を非表示にするのは現実的ではありません。 毎週500件の顧客レポートをエクスポートする必要がある場合、毎回同じ内部列を自動で非表示にする必要があります。 IronXLは、Iron Softwareのチームが提供するC#ライブラリで、少ない行数のコードでその仕事を行います。 それは.NET上で動作し、サーバーにMicrosoft OfficeやExcelをインストールすることを必要としません。
using IronXL;
WorkBook workbook = WorkBook.Load("report.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
// Hide a single column (column C)
sheet.GetColumn(2).Hidden = true;
// Hide a range of columns (columns H through K)
for (int i = 7; i <= 10; i++)
{
sheet.GetColumn(i).Hidden = true;
}
workbook.SaveAs("report-cleaned.xlsx");
using IronXL;
WorkBook workbook = WorkBook.Load("report.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
// Hide a single column (column C)
sheet.GetColumn(2).Hidden = true;
// Hide a range of columns (columns H through K)
for (int i = 7; i <= 10; i++)
{
sheet.GetColumn(i).Hidden = true;
}
workbook.SaveAs("report-cleaned.xlsx");
Imports IronXL
Dim workbook As WorkBook = WorkBook.Load("report.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()
' Hide a single column (column C)
sheet.GetColumn(2).Hidden = True
' Hide a range of columns (columns H through K)
For i As Integer = 7 To 10
sheet.GetColumn(i).Hidden = True
Next
workbook.SaveAs("report-cleaned.xlsx")
同じライブラリで.XLSX、.XLS、.CSVファイルを読み込み、編集し、保存し、数式やスタイリングをサポートし、コンソールアプリ、Web API、デスクトップアプリケーションで動作します。 以前はInteropやサードパーティのプラグインを必要としていたサーバーサイドスプレッドシート生成パイプラインは、通常、最小限のリライトでIronXLに移行できます。
最終的な考え
Excelでの列の非表示は、キーボードショートカットが突然動作を停止したり、列Aが消えて戻らない場合に、締め切りが近づくまで些細な作業と見えることがあります。 この投稿では、すべての現実的な状況について説明しました:スピードのためのCtrl + 0キーの組み合わせ、明確さのための右クリックコンテキストメニュー、折りたたみ可能なビューのためのグループ化機能、列A用の姓名ボックストリック、および定期的なクリーンアップのための小さなVBAマクロ。 列を非表示および再表示するためのこれらのいくつかの方法は、それぞれ理由があります。特定の瞬間にどちらを使用するかを知っていることが、報告書を時間内に仕上げたExcelユーザーと、まだメニューを探しているユーザーとの差を作ります。
スケールでの自動化については、IronXLライブラリは開発者にクリーンな.NET APIを通じて同じ列非表示機能を提供し、Office依存を必要としません。 より多くのチュートリアルとコードサンプルがIron Softwareドキュメンテーションサイトで利用可能です。




