エクセルVBAマクロを自動作成する無料アプリです。
例として「(指定した)すべてのセルが空白の行を削除する 」VBAマクロを作成します。
事例 表の2列目、3列目が空白の行を削除する
※ 1列目、2列目、3列目を指定すると全列空白になります。
アプリの設定
アプリの設定です。
アプリへのリンク ⇒指定した)すべてのセルが空白の行を削除<
表示されるVBAコード
アプリで作成されたコードを、VBE画面に貼り付ければ、マクロの完成です。
VBAコードを見る
Sub デモ() '(指定した)すべてのセルが空白の行を削除
Application.ScreenUpdating = False ' 画面描画を停止
Application.DisplayAlerts = False ' 警告表示を停止
Dim セル範囲 As String, セル As Range
Sheets("Sheet1").Select
'表の最終行を決定
Dim 最終行 As Long
最終行 = Cells(Rows.Count, Range("b1").Column).End(xlUp).Row
セル範囲 = "b1" & ":" & Cells(最終行, Range("d1").Column).Address(False, False)
Dim 行 As Long, 列 As Variant, 空白 As Boolean, 削除行 As Range
Set セル = Range(セル範囲)
' すべての行を走査
For 行 = セル.Rows.Count To 1 Step -1
空白 = True
' 各行のセルを確認
For Each 列 In Array(2, 3)
If セル.Cells(行, 列).Value <> "" Then
空白 = False
Exit For
End If
Next 列
' セルがすべて空白である場合、その行を削除範囲に追加
If 空白 Then
If 削除行 Is Nothing Then
Set 削除行 = セル.Rows(行)
Else
Set 削除行 = Union(削除行, セル.Rows(行))
End If
End If
Next 行
' 削除範囲が存在する場合、それを削除
If Not 削除行 Is Nothing Then
削除行.Delete Shift:=xlUp
End If
Application.DisplayAlerts = True ' 警告表示を再開
Application.ScreenUpdating = True ' 画面描画を再開
End Sub
ChatGPTで修正
コードの改変は、無料で使えるマイクロソフトの「BingAIチャット」を使います。
とても簡単です!