Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1240to1244
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

per VBA bestimmte Zelle finden

per VBA bestimmte Zelle finden
Karsten
Hallo,
ich möchte per VBA in Spalte A die Zelle finden, welche 5 Zahlen aber auch evt. Text danach hat.
Z.B. bei
gdfgdf
dfgfd:
dfgd (Vors.), dfgd dgfdl
Am Innenhafen 8-10
47059 Duisburg
sollte die aktive Zelle auf "47059 Duisburg" gehen.
Vielleicht kann mir jemand mit einem entspr. Makro weiterhelfen.
Danke.
Gruß
Karsten

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: per VBA bestimmte Zelle finden
14.12.2011 11:29:10
Reinhard
Hallo Karsten,
Sub finde()
Dim Zei As Long, Z As Long
Zei = Cells(Rows.Count, 1).End(xlUp).Row
Do
Z = Z + 1
If Len(Left(Cells(Z, 1).Value, 5)) = 5 And IsNumeric(Left(Cells(Z, 1).Value, 5)) Then
Cells(Z, 1).Select
Exit Do
End If
Loop While Z 

Gruß
Reinhard
AW: per VBA bestimmte Zelle finden
14.12.2011 11:35:40
Karsten
Hallo Reinhard,
danke, aber dein Code läuft nur durch und findet nichts.
Ich habe mein Beispiel in Spalte A kopiert.
Irgendwas stimmt nicht.
Gruß
Karsten
nicht richtig
14.12.2011 11:38:56
Rudi
Hallo,
IsNumeric(Left(Cells(Z, 1).Value, 5))
IsNumeric("1.2.3") ergibt auch True.
If Cells(Z,1) Like "#####*" Then
Gruß
Rudi
Anzeige
AW: nicht richtig
14.12.2011 11:43:31
Karsten
Hallo Rudi,
so etwa. Es wird aber immer noch nichts gefunden.
Gruß
Karsten
Sub finde()
Dim Zei As Long, Z As Long
Zei = Cells(Rows.Count, 1).End(xlUp).Row
Do
Z = Z + 1
If Len(Left(Cells(Z, 1).Value, 5)) = 5 And Cells(Z, 1) Like "#####*" Then
Cells(Z, 1).Select
Exit Do
End If
Loop While Z 

so richtig
14.12.2011 11:46:41
Rudi
Hallo,
Sub finde()
Dim Zei As Long, Z As Long
Zei = Cells(Rows.Count, 1).End(xlUp).Row
For Z = 1 To Zei
If Cells(Z, 1) Like "#####*" Then
Cells(Z, 1).Select
Exit For
End If
Next
End Sub

@Reinhard: For Next läuft min. 10x schneller als Do Loop.
Gruß
Rudi
Anzeige
AW: so richtig
14.12.2011 11:50:53
Karsten
Hallo Rudi,
danke, klappt.
Gruß
Karsten
AW: so richtig
14.12.2011 11:53:15
Reinhard
@Rudi, ich bedanke mich für die Informationen :-)
@Karsten, alle drei Codevarianten funktionieren bei mir.
Hast du Leerzeichen vpr der PLZ?
Gruß
Reinhard
AW: so richtig
14.12.2011 12:52:16
Karsten
Hallo Reinhard,
ja, aber ich hatte nun Rudis genommen. Geht.
Gruß
Karsten
Nur 5-stellige Zahlen (PLZ) berücksichtigen
14.12.2011 14:24:13
NoNet
Hey @all,
ich würde auch nur auf 5-stellige Ziffernfolgen prüfen :
If Cells(Z,1)  Like "##### [!0-9]*" 
Damit sind dann solche Werte ausgeschlossen :
"123456", "7000000000 Menschen", "490000 Einwohner", "06071/344-43"
"65536 Zellen" wird dann aber natürlich doch noch gefunden, obwohl es eigentlich "65536 Limburg/Lahn" heißen müsste ;-))
Gruß, NoNet
Anzeige

321 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige