この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
Excelで源泉徴収税額表の空白行を削除するvbaについて記載します。
(国税庁;平成27年分 源泉徴収税額表より)
参考
参考 国税庁;平成27年分 源泉徴収税額表
参考 国税庁;給与所得の源泉徴収税額表(月額表)(1~8ページ)Excel
参考 microsoft;Officeデベロッパーセンター>Worksheet.Rows プロパティ (Excel)
vbaでExcelの行を削除する
vbaでExcelの行を削除する基本構文は次のとおりです。
『(ワークシート名).Rows(行番号).Delete』
例)
下の画像「源泉徴収税額表(月額表)」の15行目を削除する場合は、次のように記述します。
(ワークシート名は省略)
『Rows(15).Delete』
※ 複数行を削除するには次のとおりです。
『(ワークシート名).Rows(”開始行番号:終了行番号”).Delete』
源泉徴収税額表の空白行を削除する
国税庁のホームページから平成27年分の源泉徴収税額表の月額表のExcelデータをダウンロードすると、次のように5行おきに空白行があります。
この月額表を新しいシート(「月額表2」というシート名にしました。)にコピペして空白行を削除してみます。
空白行の削除手順
削除する部分のvbaは次のように記述しました。
最終行を確認
最初に最終行を確認する記述をしました。(下の画像の赤い枠囲みの部分。)
A列の空白行確認 → 行削除
次にDo~Loop構文を利用してA列の空白行を確認し空白であった場合は、その行を削除するという記述をしました。
varAbにA列を代入します。(上の画像の緑色の枠囲み部分)
If構文でvarAbが空白(=Empty)かどうかを確認し空白の場合は削除します。(上の画像の赤色の枠囲み部分)
また、行数を削除した場合、①で確認した最大行が削除した分、少なくなるので最大行を代入しているlonYyの数値を「1」だけ少なくします。(上の画像のピンク色の枠囲み部分)
■□◆◇ 編集後記 ◇◆□■
ここ数日、関東は寒いですね。朝晩は厚いコートを着て移動しています。