|
質問させてください
知り合いに頼んで、ある文字列を含む行を全て選択するマクロを作ってもらいました
下に記したものがそのマクロです
実際に実行してみると、単純なサンプルではうまく動きました
A B
xxx
a xxx
b ←この行以外が選択される
xxx
しかし、同じ行に同じ文字列が2つ以上ある場合、うまく動かずマクロがとまってしまいました
A B
xxx xxx ←この行のみ選択され、マクロがとまる
a xxx
b
xxx
私はVBAに関して素人なので、どこを直せば良いのかさっぱりわかりません
知り合いに聞けばよいのですが、しばらく仕事が忙しいようで連絡がとれていません
解決法を教えていただけないでしょうか?
Option Explicit
Sub E_trade()
Dim sFirstAddress As String
Dim rFindCell As Range
Dim rMultiRange As Range
With ActiveSheet
Set rFindCell = .Cells.Find(What:="xxx")
Set rMultiRange = Nothing
If Not rFindCell Is Nothing Then
sFirstAddress = rFindCell.Address
Do
If rMultiRange Is Nothing Then
Set rMultiRange = rFindCell.EntireRow
Else
Set rMultiRange = Application.Union(rMultiRange, rFindCell.EntireRow)
End If
Set rFindCell = .Cells.FindNext(rFindCell)
Loop While Not rFindCell Is Nothing And rFindCell.Address < sFirstAddress
End If
If Not rMultiRange Is Nothing Then rMultiRange.Select
End With
End Sub
|
|