Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1396to1400
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

Problem mit der Find-Methode!

Problem mit der Find-Methode!
29.12.2014 12:30:17
Kasimir
Hallo Ihr Helfer!
Ich benötige mal wieder Eure Hilfestellung. Ich suche in einer Spalte (58000 Datensätze) nach einem bestimmten Datum. Dafür benutze ich folgende Codezeilen:
strSuchtext = cdDatumTermin
With Auswertung
'Suchen, in welcher Zeile der Termin steht. Kriterium ist das Datum
Set rngSuchbereich = .Columns("B:B").Find(What:=strSuchtext, LookIn:=xlFormulas, LookAt:= _
xlPart, MatchCase:=True)
If Not rngSuchbereich Is Nothing Then
lngDatum = rngSuchbereich.Row
End If
End With

Nun funktioniert das, wenn in die Spalte als Text formatiert ist. Es kann aber auch vorkommen, dass die Spalte als Datum formatiert ist und dann wird das Datum aus der Variablen „strSuchtext“ nicht gefunden.
Wie kann ich nun vorgehen, dass sowohl wenn die Spalte B als Text, als auch als Datum formatiert ist, ich ein Ergebnis in der Variablen „lngDatum“ erhalte?
Danke Euch schon mal für Eure Unterstützung,
Kasimir

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vorher Formatieren!
29.12.2014 12:49:25
Thorben
.Columns("B:B").NumberFormat = "m/d/yyyy"
Gruß
Thorben

Man kann aber auch die Suche erweitern, ...
29.12.2014 13:32:54
Luc:-?
…Kasimir:
strSuchtext = cdDatumTermin: datSuchwert = CDate(strSuchtext)
With Auswertung
Rem Suchen, in welcher Zeile d.Termin steht. Kriterium ist d.Datum
Set rngSuchbereich = .Columns("B:B").Find(What:=strSuchtext, LookIn:=xlFormulas, _
LookAt:=xlPart, MatchCase:=True)
If rngSuchbereich Is Nothing Then
Set rngSuchbereich = .Columns("B:B").Find(What:=datSuchwert, LookIn:=xlFormulas, _
LookAt:=xlPart, MatchCase:=True)
End If
If Not rngSuchbereich Is Nothing Then lngDatum = rngSuchbereich.Row
End With
Gruß, Luc :-?

Anzeige
egal wie, Zellenformate sollten homogen sein...owT
29.12.2014 14:17:05
Thorben
.

Eben, sollten! Und wenn nicht? Praxis - SAP & Co!
29.12.2014 14:27:10
Luc:-?
Gruß, Luc :-?

AW: Problem mit der Find-Methode!
29.12.2014 15:52:04
daniel
Hi
Ein echtes Datum ist für Excel eine einfache Ganzzahl.
Die zuverlässigste Suchmethode ist in der Regel, das Suchtext-Datum in diese Ganzzahl zu wandeln und mit WorksheetFunction.Match die Zeilennummer der Fundstelle zu ermitteln.
Des weiteren hätte Worksheetfunction.Match eine zweite Variante für sortierte Listen, welche bei grossen Datenmengen schneller ist als die lineare Suche von .Find.
Gruss Daniel

Danke Euch für die Hilfe!
29.12.2014 16:03:55
Kasimir
Hallo an alle!
Danke Euch für die Hilfe. Die Lösung von Luc hat mir am Besten zugesagt und diese habe ich genommen.
Nochmal Danke und einen guten Rutsch ins neue Jahr,
Kasimir

Anzeige
Dito! ;-) owT
29.12.2014 16:09:24
Luc:-?
:-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige