メインコンテンツへスキップ

Excelで複数の空の列をすばやく削除するにはどうすればよいですか?

Webページ、CSV、テキストなどのソースからMicrosoft Excelにデータをインポートすると、空の列が多数含まれる場合があります。 空の各列をXNUMXつずつ削除するには時間がかかる必要があります。 したがって、私たちの中には、この問題を解決する簡単な方法を探している人もいます。 この記事では、複数の空の列をすばやく削除するのに役立ついくつかのトリッキーなヒントを集めています。

式を使用してワークシートの複数の空の列を削除します

VBAコードを使用してワークシートの複数の空の列を削除します

便利な機能を使用して、選択範囲/アクティブシート/ブック全体の複数の空の列を削除します

VBAコードを使用して、ヘッダー付きの複数の空の列を削除します


式を使用してワークシートの複数の空の列を削除します

Excelでは、数式を適用して列が空白かどうかを識別してから、 並び替え すべての空白の列をまとめて並べ替えてから、一度に削除する機能。 このようにしてください:

1。 データ範囲の上部に新しい行を追加します。スクリーンショットを参照してください。

2。 次に、以下の数式をセルA1に入力し、塗りつぶしハンドルを右側にドラッグして、この数式を他のセルに適用します。列が空白の場合はTRUEが表示され、それ以外の場合はFALSEが表示されます。スクリーンショットを参照してください。

=COUNTA(A2:A1048576)=0

3。 次に、ヘルパー行を含むデータ範囲を選択し、[ 且つ > 並び替え、スクリーンショットを参照してください:

4。 飛び出した 並び替え ダイアログボックスで、をクリックします。 オプション 次のボタン ソートオプション ダイアログ、選択 左から右に並べ替え オプション、スクリーンショットを参照してください:

5に設定します。 OK をクリックします。 OK 戻るボタン 並び替え ダイアログを開き、 行1 並べ替え ドロップダウンして選択します セル値 from 並べ替え セクションでは、選択 最大から最小 注文 セクション、スクリーンショットを参照してください:

6。 次に、すべての空の列がデータの左側で並べ替えられました。これで、すべての列を選択してから右クリックして、を選択する必要があります。 削除 これらの空白の列を一度に削除するには、スクリーンショットを参照してください。


VBAコードを使用してワークシートの複数の空の列を削除します

VBAマクロを使用したい場合は、作業がはるかに簡単になります。 次のVBAコードが役立つ場合があります。次のようにしてください。

1。 を押し続けます 他の + F11 Excelでキーを押すと、 アプリケーション向け Microsoft Visual Basic 窓。

2に設定します。 OK をクリックします。 インセット > モジュール、次のマクロをに貼り付けます モジュール 窓。

VBAコード:選択範囲内の複数の空白列を削除します:

Sub DeleteEmptyColumns() 'Updateby Extendoffice
Dim rng As Range Dim InputRng As Range xTitleId = "KutoolsforExcel" Set InputRng = Application.Selection Set InputRng = Application.InputBox( "Range:"、xTitleId、InputRng.Address、Type:= 8)Application.ScreenUpdating = False For i = InputRng.Columns.Count To 1 Step -1 Set rng = InputRng.Cells(1、i).EntireColumn If Application.WorksheetFunction.CountA(rng)= 0 Then rng.Delete End If Next Application.ScreenUpdating = True End Sub

3。 プレス F5 このマクロを実行するには、キーを押して、ポップアウトダイアログで必要な作業範囲を選択します。 スクリーンショットを参照してください:

4. OK、次に、選択範囲内のすべての空の列が削除されます。 スクリーンショットを参照してください:


便利な機能を使用して、選択範囲/アクティブシート/ブック全体の複数の空の列を削除します

また, 非表示の(表示されている)行と列を削除する の有用性 Kutools for Excel 複数の空の行または列を一度にすばやく削除するのに役立ちます。

ヒント:これを適用する 非表示の(表示されている)行と列を削除する 機能、まず、ダウンロードする必要があります Kutools for Excel、次に機能をすばやく簡単に適用します。

インストールした後 Kutools for Excel、次のようにしてください。

1に設定します。 OK をクリックします。 クツール > 削除 > 非表示の(表示されている)行と列を削除する、スクリーンショットを参照してください:

2。 の中に 非表示の(表示されている)行と列を削除する ダイアログボックスで、操作を適用するスコープを指定します 覗く ドロップダウンリスト。 (選択した場合 選択した範囲内、最初に使用する範囲を選択する必要があります。)次に、チェックします。 コラムタイプを削除。 そして、 空白の列 from 詳細タイプ。 スクリーンショットを参照してください:

3。 次に、をクリックします OK。 また、選択した範囲から空白の列が削除されました。 スクリーンショットを参照してください:


VBAコードを使用して、ヘッダー付きの複数の空の列を削除します

ワークシートのヘッダーのみを含む空の列をすべて削除したい場合があります。次のVBAコードを使用すると、次の手順を実行できます。

1。 を押し続けます 他の + F11 Excelでキーを押すと、 アプリケーション向け Microsoft Visual Basic 窓。

2に設定します。 OK をクリックします。 インセット > モジュール、次のマクロをに貼り付けます モジュール 窓。

VBAコード:ヘッダー付きの空の列をすべて削除します

Sub deleteblankcolwithheader()
'updateby Extendoffice
    Dim xEndCol As Long
    Dim I As Long
    Dim xDel As Boolean
    On Error Resume Next
    xEndCol = Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
    If xEndCol = 0 Then
        MsgBox "There is no data on """ & ActiveSheet.Name & """ .", vbExclamation, "Kutools for Excel"
        Exit Sub
    End If
    Application.ScreenUpdating = False
    For I = xEndCol To 1 Step -1
        If Application.WorksheetFunction.CountA(Columns(I)) <= 1 Then
            Columns(I).Delete
            xDel = True
        End If
    Next
    If xDel Then
        MsgBox "All blank column(s) with only a header row have been deleted.", vbInformation, "Kutools for Excel"
    Else
        MsgBox "There are no Columns to delete as each one has more data (rows) than just a header.", vbExclamation, "Kutools for Excel"
    End If
    Application.ScreenUpdating = True
End Sub

3。 次に、F5キーを押してこのコードを実行すると、プロンプトボックスが表示され、ヘッダー付きの空白の列が削除されることを通知します。スクリーンショットを参照してください。

4.次に、[OK]ボタンをクリックすると、現在のワークシートのヘッダーのみを含むすべての空白の列が一度に削除されます。 スクリーンショットを参照してください:


より相対的な記事:

  • Excelで背景色に基づいて行を削除する
  • 背景色に基づいて行全体を削除するにはどうすればよいですか? この例では、次のスクリーンショットに示すように、セルが青色の背景色で塗りつぶされているすべての行を削除する必要があります。 この記事では、Excelでこのタスクを実行するためのいくつかのコードを取得します。

最高のオフィス生産性向上ツール

人気の機能: 重複を検索、強調表示、または識別する   |  空白行を削除する   |  データを失わずに列またはセルを結合する   |   数式なしのラウンド ...
スーパールックアップ: 複数の基準の VLookup    複数の値の VLookup  |   複数のシートにわたる VLookup   |   ファジールックアップ ....
詳細ドロップダウン リスト: ドロップダウンリストを素早く作成する   |  依存関係のドロップダウン リスト   |  複数選択のドロップダウンリスト ....
列マネージャー: 特定の数の列を追加する  |  列の移動  |  Toggle 非表示列の表示ステータス  |  範囲と列の比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   ビッグフォーミュラバー    ワークブックとシートマネージャー   |  リソースライブラリ (自動テキスト)   |  日付ピッカー   |  ワークシートを組み合わせる   |  セルの暗号化/復号化    リストごとにメールを送信する   |  スーパーフィルター   |   特殊フィルター (太字/斜体/取り消し線をフィルター...) ...
上位 15 のツールセット12 テキスト 工具 (テキストを追加, 文字を削除する、...)   |   50+ チャート 種類 (ガントチャート、...)   |   40+ 実用的 (誕生日に基づいて年齢を計算する、...)   |   19 挿入 工具 (QRコードを挿入, パスから画像を挿入、...)   |   12 変換 工具 (数字から言葉へ, 通貨の換算、...)   |   7 マージ&スプリット 工具 (高度な結合行, 分割セル、...)   |   ... もっと

Kutools for Excel で Excel スキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、生産性を向上させ、時間を節約するための300以上の高度な機能を提供します。  最も必要な機能を入手するにはここをクリックしてください...

kteタブ201905


Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!

Comments (8)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
It deleted all my names in my first name column! Auuggh!
This comment was minimized by the moderator on the site
Thanks its very helpful page with basic excel option :)
This comment was minimized by the moderator on the site
Hi, can anyone guide how i can delete blank cells in a row or column...note whole blank column or rows... only blank cell i need to delete in a column
This comment was minimized by the moderator on the site
Hello,


try to implement below code
This comment was minimized by the moderator on the site
Hi, the thing which you are mentioned is so helpfull. I want a small help from your side. Daily am download the some files and using pivot prepared the reports. It is daily task for me and routine process. How can i do it with out using pivot. Ex: If i prepared the reports on yesterday in "A" Excel file. Next day in "A" Excel file just i replace the new "B" Excel file data. By this automatically report would be create? Is it possible?
This comment was minimized by the moderator on the site
Very helpful page. Thank you. :-) My challenge is that I have columns with headers, but no data in that column. Only the header is present. How would one go about deleting columns where there is no data, but the header is there? :o
This comment was minimized by the moderator on the site
the above details are very helpful for my personal use. Thanks for your guidance. M.KARTHIKEYAN :-)
This comment was minimized by the moderator on the site
I found it much simpler to go to the line after my last line of data, enter "Shift-Ctrl-End" to highlight all blank lines that followed(much faster), right click and enter "delete all rows/columns". The system didn't waste so much time searching this way and so it was clean in the blink of an eye and files that were 20 MB were dropped to a size of 20 kb.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations