| 
    
     |  | ▼ごん さん: 横入り失礼します。
 
 >例えば、C列〜F列を選択しマクロを実施すると、C列からF列の3行目以降が空白で何も書かれていなければ、その列は削除してしまいたい。
 
 列全体を選択して実行という条件で、
 
 Sub 選択列削除()
 Dim c As Range
 Dim i As Long, L As Long
 
 If TypeName(Selection) <> "Range" Then Exit Sub
 L = Rows.Count
 If Selection.Rows.Count <> L Then
 MsgBox "列全体を選択してください"
 Exit Sub
 End If
 
 Application.ScreenUpdating = False
 With Selection
 For i = .Columns.Count To 1 Step -1
 Set c = .Columns(i)
 If c.Cells(L).End(xlUp).Row < 3 Then
 c.Delete
 End If
 Next
 End With
 Application.ScreenUpdating = True
 End Sub
 
 ※かんちがいなら、スルーしてください。
 
 |  |