要望ボックス

トップ > 要望ボックス > 回答一覧 > 記事
要望ボックスへ
回答一覧へ



2022年4月17日【ID:0】

【5】要望ボックス


指定した列の中に空白がある場合、
その行を自動で削除したいのですが、
VBAでどのように実現しますか?

【回答】

削除する方法はいろいろありますが、その中の1つを紹介します。

・「条件を選択してジャンプ」の機能を活用する

「ホーム」内にある「検索と選択」→「条件を選択してジャンプ」を使うと空白セルをまとめて選択することができます。
使い方のイメージは次の画像です。

これをVBAで再現すると、SpecialCells(xlCellTypeBlanks)になります。
後は、これによって選択された範囲をEntireRowで行選択をして行全体を削除するだけです。
※この時、空白セルが1つも見つからない場合、エラーになります。
そのため、IsNullを用いてデータが格納されていることをチェックしています。

上記の参考ファイルはこちら▼

他の方法として対象範囲を上からループさせ空白なら削除するというように実現することもできますが、行を削除した場合は繰り返している数がずれるので、少し複雑になります。

また、今回紹介した方法は完全に削除しています。
削除ではなく、非表示にしたいという場合は、以下の内容が参考になるかと思います。

>>空白行を自動でグループ化


パソコンで開く場合は、記事の最後に「リンクコピー」があるためご活用ください。


メンバー募集
ExcelVBA特別教材配布 ExcelVBA特別教材配布





リンクの共有はこちらから行えます。

  リンクコピー Twitter Facebook はてなブックマーク Pocket
トップ > 要望ボックス > 回答一覧 > 記事
要望ボックスへ
回答一覧へ


- 人気の記事 -



- メンバー限定 [一覧] -



サイト累計閲覧数

4035687

有料動画講座
(買い切り)

Excel完全制覇


ちょっとした機能 便利ツール

トップ > 要望ボックス > 回答一覧 > 記事
要望ボックスへ
回答一覧へ