Excelの源泉徴収税額表の空白行を削除するマクロ

この記事には広告を含む場合があります。

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

Excelで源泉徴収税額表の空白行を削除するvbaについて記載します。

(国税庁;平成27年分 源泉徴収税額表より)

空白行削除_11


vbaでExcelの行を削除する

vbaでExcelの行を削除する基本構文は次のとおりです。

『(ワークシート名).Rows(行番号).Delete

 

例)

下の画像「源泉徴収税額表(月額表)」の15行目を削除する場合は、次のように記述します。

(ワークシート名は省略)

Rows(15).Delete

空白行削除_12

※ 複数行を削除するには次のとおりです。

『(ワークシート名).Rows(”開始行番号:終了行番号”).Delete

 

源泉徴収税額表の空白行を削除する

国税庁のホームページから平成27年分の源泉徴収税額表の月額表のExcelデータをダウンロードすると、次のように5行おきに空白行があります。

空白行削除_13

この月額表を新しいシート(「月額表2」というシート名にしました。)にコピペして空白行を削除してみます。

空白行の削除手順

削除する部分のvbaは次のように記述しました。

最終行を確認

最初に最終行を確認する記述をしました。(下の画像の赤い枠囲みの部分。)

空白行削除_15

 

A列の空白行確認 → 行削除

次にDo~Loop構文を利用してA列の空白行を確認し空白であった場合は、その行を削除するという記述をしました。

空白行削除_16

varAbにA列を代入します。(上の画像の緑色の枠囲み部分)

If構文でvarAbが空白(=Empty)かどうかを確認し空白の場合は削除します。(上の画像の赤色の枠囲み部分)

また、行数を削除した場合、①で確認した最大行が削除した分、少なくなるので最大行を代入しているlonYyの数値を「1」だけ少なくします。(上の画像のピンク色の枠囲み部分)


■□◆◇ 編集後記 ◇◆□■

ここ数日、関東は寒いですね。朝晩は厚いコートを着て移動しています。