|
▼TOTO さん:
お返事おそくなって、すみません。
見逃しておりました・・・
(既に解決されていた場合は、無視して下さい)
前回、私が記載致しましたプログラムを(無理矢理)利用すると
Public Sub FindDeleteSort_Ver2()
Dim i As Long
Dim FindRow As Long
For i = 1 To 65536
If Cells(i, "A").Value <> "" Then
'1行目から見ていって何か入っていたら、その行からソート対象にする
FindRow = i
Exit For
End If
Next i
For i = FindRow To 65536
If Cells(i, "C").Value = "◇" Then
'Rows(i).Value = ""
Cells(i, "A").Value = ""
Cells(i, "B").Value = ""
Cells(i, "C").Value = ""
End If
Next i
Range("A" & FindRow & ":B65536").Sort key1:=Range("A1"), order1:=xlAscending, header:=xlNo
End Sub
こんな感じになりますでしょうか。
列の指定も前回同様ですので、今回用に変更する必要がありますが。。
また、上と同様のプログラムを改良すると、下記のような感じ
になります。
Public Sub NewFindDeleteSort()
Dim strSelectRange As String
strSelectRange = ActiveSheet.UsedRange.Address
Range(strSelectRange).Sort key1:=Range("A1"), order1:=xlAscending, header:=xlNo
End Sub
(あえて、セル範囲を変数に入れていますが、直接書かれても、もちろんOKです)
|
|