- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAの空白行削除について教えて下さい。)
VBAの空白行削除方法と書き方について
このQ&Aのポイント
- VBAを使用してA列で空白セルを見つけ、その行全体を削除する方法を教えてください。
- 以下のコードを使用して、A列で空白セルを見つけ、その行全体を削除することができます。 Sub DeleteRowsWithBlankCells(ByRef argRange As Range) On Error Resume Next argRange.SpecialCells(xlCellTypeBlanks).EntireRow.Delete On Error GoTo 0 End Sub Call DeleteRowsWithBlankCells(Range("A1:A10"))
- 呼び出しの方法は、Call DeleteRowsWithBlankCells(Range("A1:A10"))となります。End Subの前にCall文を書く必要があります。Sub以降はそのままのコードですが、Call文を追加することで、指定した範囲のA列の空白セルが削除されます。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
何度も処理の中で削除する必要がある場合(他のプロシージャから読みだす)のであれば 以下のようにしてから、マクロ「呼び出し元」を実行してください。 Sub 呼び出し元() Call DeleteRowsWithBlankCells(Range("A1:A10")) End Sub Sub DeleteRowsWithBlankCells(ByRef argRange As Range) On Error Resume Next argRange.SpecialCells(xlCellTypeBlanks).EntireRow.Delete On Error GoTo 0 End Sub 一度きりの実行でいいのであれば、以下のようにして マクロ「DeleteRowsWithBlankCells」を実行してください。 Sub DeleteRowsWithBlankCells() On Error Resume Next Range("A1:A10").SpecialCells(xlCellTypeBlanks).EntireRow.Delete On Error GoTo 0 End Sub