Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the google-analytics-for-wordpress domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/xs182025/consulting-campus.site/public_html/wp-includes/functions.php on line 6114
【Excel】空白の行・列をまとめて削除する【超簡単・一発】 | CONSULTING CAMPUS

【Excel】空白の行・列をまとめて削除する【VBAコード付き】

空白の行または列をまとめて削除する 【VBAコード付き】 エクセル
この記事は約5分で読めます。
スポンサーリンク

本記事では、Excel (エクセル) で、空白の行または列をまとめて一括削除する方法をご紹介します。行や列を1つずつ削除すると時間がかかったりミスをしたりすることがありますが、今回の方法では特定の範囲に存在する行や列全体から空白の行・列のみを複数選択し削除できるようになります。また、同様の方法をVBAで実行したい方向けに、空白の行・列をまとめて削除するVBAコードも掲載しています。

  • Excelで空白の行・列のみを複数まとめて削除したい
  • Excelで空白の行・列のみを複数まとめて削除するVBAコードが知りたい
本記事で実装する処理
空白の行または列をまとめて削除する方法
スポンサーリンク

結論: 空白の行・列をまとめて削除する方法

Excel (エクセル) で、空白の行または列をまとめて一括削除する方法は下記のステップで実行できます。クリックで該当セクションにジャンプします。


操作画面のスクショを含む、詳細な解説は次のセクションで行っています。また、VBAコードについてはこちらで掲載しています。

空白の行・列をまとめて削除するステップの解説

こちらのセクションでは空白の行または列をまとめて一括削除するステップを操作画面のスクショ付きで解説していきます。ここでは空白の行を削除するステップを紹介していますが、空白の列を削除したい場合は、解説中の行と列を入れ替えて操作することで実行できます。

空白の行または列を含むデータ範囲の選択

まず初めに、空白の行または列を含むデータ範囲を選択します。下記の例では、社員情報に関するデータのうち、部署 (その他の列でもOK) の列を全選択します。

空白の行または列を含むデータ範囲の選択

空白の行または列へのジャンプ

次に、選択範囲に存在する空白の行または列のみを選択するため、Excelのジャンプ機能を実行します。ジャンプ機能は Ctrl + G を押して呼び出すことができます。

表示された [ジャンプダイアログ][セル選択][空白セル]、と進みOKをクリックします。これにより、先程選択したデータ範囲内に存在する空白行 (または空白列) のみが選択状態となっていることが確認できます。

空白セルの選択がうまくいかない場合の対処法

見た目が空白でも、スペースや改行などの非表示文字が含まれている場合、該当のセルにジャンプできません。セルを確認し、本当に空白であるかをチェックしてください。

空白の行・列をまとめて削除する

最後に、選択された空白行 (または空白列) をまとめて行または列ごと削除します。現在、空白セルのみが選択状態になっているので、そのまま Ctrl + – (マイナス) キーを押します。これにより、セルの削除画面が表示されるので、空白行を削除したい場合は [行全体]、空白列を削除したい場合は [列全体] をクリックします。

これにより、現在のシート内で空白を含む行全体 (または列全体) がまとめて削除され、テーブル内に空白行がない状態となります。

空白の行または列をまとめて削除する方法
誤ってデータを削除してしまった場合の対処法

誤って重要なデータを削除してしまった場合、通常と同じように Ctrl + Z を押して作業をもとに戻すことができます。行や列全体をまとめて削除すると、同じ行・列に存在する他のデータを削除してしまう場合があるので注意してください。

空白の行・列をまとめて削除するVBA (マクロ)

最後に、ここまで紹介した空白の行・列をまとめて削除する処理と全く同じ操作をVBAで実行するためのコードをご紹介します。こちらのコードでは、以下の操作を実現しています。

  • 削除タイプの選択: ユーザーに対して、行を削除するか列を削除するかを尋ねるダイアログボックスが表示されます
  • 空白セルの検出と削除: 選択範囲内のセルを特定し、空白の行または列を削除します

VBAの実行方法に関してより詳しく知りたい方は【丁寧に解説】エクセルでマクロ・VBAを実行するをご確認ください。

Sub DeleteRowsOrColumnsUsingSelection()
    ' Written by consulting-campus.site
    Dim deleteType As Integer
    Dim deleteCondition As Integer
    
    ' Thorw error when cells are not selected
    If TypeName(Selection) <> "Range" Then
        MsgBox "選択範囲が無効です。セル範囲を選択してください。", vbExclamation
        Exit Sub
    End If
    
    ' Ask whether to delete rows or columns
    deleteType = MsgBox("行を削除しますか?(「いいえ」を選ぶと列を削除します)", vbYesNoCancel + vbQuestion)
    If deleteType = vbCancel Then Exit Sub
    

    ' Delete rows or columns
    Application.ScreenUpdating = False
    If deleteType = vbYes Then
        Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
    Else
        Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
    End If
    Application.ScreenUpdating = True
    MsgBox ("完了しました")
End Sub

まとめ

以上が、Excelで空白行または空白列をまとめて削除する方法のご紹介となります。

ご質問やご不明点がある場合はお気軽にコメントお待ちしております。

ご精読いただきありがとうございました。

コメント

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