第2个回答 2015-11-03
Sub FindAll()
Dim a, rng1, rng2, Address1, Address2
a = "xxx"
Set rng1 = ActiveSheet.UsedRange.Find(What:=a, lookat:=xlWhole)
If rng1 Is Nothing Then Exit Sub
Address1 = rng1.Address(0, 0)
Set rng2 = ActiveSheet.UsedRange.FindNext(rng1)
Address2 = rng2.Address(0, 0)
Do Until Address1 = Address2
Set rng1 = Application.Union(rng1, rng2)
Set rng2 = ActiveSheet.UsedRange.FindNext(rng2)
Address2 = rng2.Address(0, 0)
Loop
rng1.Select
End Sub