|
▼boss さん:
参考になるかどうか K13 から K列データ最終セルまでの間の
最終 と あああ のセルを取得するサンプルです。
等間隔 というところは無視しています。
ここで、取得される g や a の領域を相手に、好きな処理をどうぞ。
a は セルの集合体ですから、その中から1つずつ取り出して処理するのもよし
処理要件によっては a に対して一括処理もできるでしょう。
Sub Sample()
Dim sh1 As Worksheet
Dim g As Range
Dim c As Range
Dim f As Range
Dim a As Range
Dim ttlrow As Long
Dim r As Range
Set sh1 = Sheets("Sheet1")
Set r = sh1.Range("K13", sh1.Range("K" & Rows.Count).End(xlUp))
Set g = r.Find(What:="最終", LookAt:=xlWhole, SearchDirection:=xlPrevious)
If g Is Nothing Then
MsgBox "最終の行がありません" & vbLf & "処理を打ち切ります"
Exit Sub
End If
ttlrow = g.Row
MsgBox "最終は " & ttlrow & "行目にありましたよ"
Set c = r.Find(What:="あああ", LookAt:=xlWhole, After:=r.Cells(r.Count))
If c Is Nothing Then
MsgBox "あああ の行がありません" & vbLf & "処理を打ち切ります"
Exit Sub
End If
Set f = c
Do
If a Is Nothing Then
Set a = c
Else
Set a = Union(a, c)
End If
Set c = r.FindNext(c)
Loop While c.Address <> f.Address
MsgBox "あああ は 以下に存在しています" & vbLf & a.Address(External:=True)
End Sub
|
|