VBA 空白行の削除




ステートメント構文など
SpecialCells(XlCellType)

任意に指定した範囲の空白行を削除して詰める方法です。
エクセル上だと「ジャンプ」→「セル選択」→「空白行」を選択と同じ動作から「行全体を削除」までを再現します。


サンプルコード
Sub kuhakusakujo()
    '例としてF列の空白セルを選択
    Columns("F").SpecialCells(xlCellTypeBlanks).Select
    '選択したセルがある行全体を削除
    Selection.EntireRow.Delete
    '選択状態の解除(一応)
    Application.CutCopyMode = False
End Sub


実行結果イメージ


解説
Columns("指定列").SpecialCells(xlCellTypeBlanks).Select
で、指定列にある空白行を選択しています。
空白以外にスペースなどがあると対象外になります。

Selection.EntireRow.Delete
は、選択しているセルがある行全体(entire)を削除しています。


関連・類似ページ
XlCellType列挙、XlSpecialCellsValue列挙 定数一覧

SpecialCellsは他にもいろいろ条件が指定できます。
上記関連ページを参照してみてください。