|
▼roro728 さん:
こんにちは
検索領域が特定されていませんのでシート全体を検索するコードにしてあります。
また、【一番最後のセル】というのが、2種類あると思います。
以下のコードは、該当のセルで一番大きな行の一番右のセルというロジックです。
もし、【一番大きな列の一番下のセル】ということであれば
SearchOrder:=xlByRows ==> SearchOrder:=xlByColumns に変更してください。
Option Explicit
Sub Sample()
Dim s As String, sel As String
Dim c As Range, zc As Range
Dim fAddr As String
s = "特定文字列" '<== 実際の検索文字列に
With Worksheets("Sheet1") '<== 実際のシート名に
Set c = .Cells.Find(What:=s, after:=.Cells(Rows.Count, Columns.Count), LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, MatchByte:=False, SearchFormat:=False)
If c Is Nothing Then
MsgBox "指定の文字列はありません"
Exit Sub
End If
fAddr = c.Address
Do
Set zc = c
sel = sel & "," & c.Address(False, False)
Set c = .Cells.FindNext(after:=c)
Loop While c.Address <> fAddr
.Range(Mid(sel, 2)).Select
zc.Activate
End With
Set c = Nothing
Set zc = Nothing
End Sub
|
|