| 
    
     |  | こんばんは 
 > Set r1 = Range("A1:A700").SpecialCells(xlCellTypeBlanks)
 このコードでは「A1:A700」のうちUsedRngeが評価されます。
 
 >色3がA1〜A3とA7〜A9に付きます。
 9行目までがUsedRangeという事です。
 
 >更に再度マクロを実行するとA4〜A9に色3が付きます
 行を削除してもUsedRangeの情報は残っています。
 
 >Set r1 = Range("A1:A" & Cells(65536, 1).End(xlUp).Row).SpecialCells(xlCellTypeBlanks)
 は実行する毎に最終データの有る行(一度目はA6、二度目はA3になってr1はNothing)
 
 Sub test()
 Dim r1 As Range
 On Error Resume Next 'エラースキップ
 Set r1 = Range("A1:A700").SpecialCells(xlCellTypeBlanks)
 On Error GoTo 0 'エラーが出たらストップ
 '
 If r1 Is Nothing Then
 MsgBox "空白なし", vbInformation
 Else
 r1.Interior.ColorIndex = 5
 MsgBox "削除"
 r1.EntireRow.Delete '行全体を削除
 Set r1 = Nothing
 ActiveSheet.UsedRange 'を入れるとUsedRangeが再評価される
 End If
 End Sub
 
 とするといいと思います。
 
 以上、全て結果から推測・・・・でした。
 
 
 |  |