Find-Methode gibt zweiten Wert
02.01.2007 15:21:03
Thomas
ich möchte mit der Find-Methode Werte finden und weiterverarbeiten.
Beispiel:
A1..A10 sind alle leer, bis auf:
A1 enthält "Anna"
A2 enthält "Berta"
A10 enthält "Cäsar"
Nun sollen A1..A10 durchforstet werden und -falls sie nicht leer sind- in der gefundenen Reihenfolge nach Spalte C kopiert werden.
Ich dachte mir das so:
Sub Finden()
Dim c
Dim z
With Range("A1:A10")
Set c = .Find("*")
If Not c Is Nothing Then
firstaddress = c.Address
z = 1
Do
Cells(z, 3) = c
Set c = .FindNext(c)
z = z + 1
Loop While c.Address <> firstaddress
End If
End With
End Sub
Das Problem ist, dass der erste gefundene Wert nicht Anna, sondern Berta ist und Anna als letztes gefunden wird.
Das Ergebnis ist also:
C1 = Berta
C2 = Cäsar
C3 = Anna
Ich hätte aber folgendes erwartet:
C1 = Anna
C2 = Berta
C3 = Cäsar.
Weiß jemand Rat, wie ich Excel dazu bringen kann, Zelle A1 als erstes zu durchsuchen, wie auch im Range-Objekt angegeben?