Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1532to1536
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
Problem mit .Find bei Suche nach Datum
16.01.2017 16:15:12
Philipp
Hallo Zusammen,
Ich habe folgendes Problem:
Ich habe einen Dynamischen Kalender angelegt in dem die Daten in Formelabhängigkeit stehen (Das _ Datum wird nur in der Ersten Zeile schriftlich angegeben, der Rest setzt sich aus A2=A1+1, A3=A2+1 etc. zusammen). Nun möchte ich ein Makro schreiben, dass bestimmte Daten (Geburtstage) in diesem Kalender sucht und in die gefundene Zeile den Namen zum Geburtstag einträgt. Bisher sieht mein Code wie folgt aus:

Private Sub CommandButton3_Click()
Dim Tag As String
Dim Fund As Range
Dim k As Integer
k = 6
Do Until Worksheets(1).Cells(k, 51).Value = ""
Tag = Worksheets(1).Cells(k, 51).Value '"Test"
Set Fund = Worksheets(2).Range("A:A").Find(What:=Tag, LookIn:=xlFormulas, LookAt:=xlWhole)
If Not Fund Is Nothing Then
Worksheets(2).Cells(12, Fund.Row).Value
k = k + 1
Else
k = k + 1
End If
Loop
End Sub

Mit dem Zähler k werden alle Geburtstage abgelaufen und mit Find im Kalender gesucht.
Vielen Dank schonmal
Grüße
Phil

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit .Find bei Suche nach Datum
16.01.2017 16:29:07
Crazy
Hallo
und was genau ist nun dein Problem?
MfG Tom
AW: Problem mit .Find bei Suche nach Datum
16.01.2017 19:08:35
fcs
Hallo Phil,
Die Variable "Tag" darfwahrscheinlich nicht als String deklariert werden.
Wahrscheinlich funktioniert es, wenn Tag als Variant oder Datum deklariert wird. Hängt davon ab wie die Werte in Spalte A in den Zellen stehen.
Gruß
Franz
AW: Problem mit .Find bei Suche nach Datum
16.01.2017 20:34:37
phil
Oh, ganz vergessen. Mein Problem ist, dass mir der Find befehl immer ein Nothing zurück gibt. Wenn ich testweise einen String in die Spalte schreiben findet er diesen ohne Probleme...
AW: Problem mit .Find bei Suche nach Datum
16.01.2017 20:45:24
Crazy
Hallo Phil
mit der Find-Methode und Datum gibt es Probleme wenn das Datum nicht in
TT.MM.JJJJ
vorliegt
dann würde sich eher, wie von Hajo vorgeschlagen, Match eignen
MfG Tom
Anzeige
AW: Problem mit .Find bei Suche nach Datum
16.01.2017 19:24:06
Hajo_Zi
Hallo Phil,
ich habe gute Erfahrung gemacht mit Match.
aktuelles Datum suchen
Option Explicit
Sub Test()
'   Heutiges Datum in Spalte A (1) suchen von Basti Spotlight
'   es wird die Zeile ausgegeben
MsgBox Application.Match(CDbl(Date), Columns(1), 0)
End Sub

AW: Problem mit .Find bei Suche nach Datum
18.01.2017 11:16:48
Philipp
Hallo zusammen,
konnte mich leider erst jetzt wieder damit beschäftigen.
Ich habe keinerlei Erfahrung mit dem .Match Befehl. Außerdem benötige ich die Adresse des gefundenen Datums um darauf hin in eine Zelle der gleichen Zeile den Namen einzutragen. Bekomme ich die Adresse auch mit dem Match Befehl? Wenn ich schreibe:
Test = Application.Match(CDbl(Tag), Columns(1), 0) gibt es mir einen Fehler 2042 aus.
Tag ist das Datum, welches in der Spalte gesucht werden soll.
Das Datum in der Zelle liegt eigentlich als TT.MM.JJJJ vor. Nur dass es sich eben aus einer Formel Berechnet und ich das Datum nicht händisch eingegeben habe.
Gruß Phil
Anzeige
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 11:31:13
Crazy
Hallo
beachte aber dass du mit Match nur in einer Spalte oder in einer Zeile suchen kannst
Sub Test()
Dim lngZeile As Long
lngZeile = Application.Match(CDbl(Date), Columns(1), 0)
MsgBox lngZeile
End Sub
MfG Tom
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 11:36:09
Crazy
Hallo nochmal
hier mit flexiblem Tag
Sub Test()
Dim lngZeile As Long
Dim datTag As Date
datTag = "01.02.2017"
lngZeile = Application.Match(CDbl(datTag), Columns(1), 0)
MsgBox lngZeile
End Sub
MfG Tom
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 11:40:37
Philipp
Funktioniert leider immer noch nicht... mein gesuchtes Datum kommt aus einer Zelle:
Dim lngZeile As Long
Dim datTag As Date
datTag = Worksheets(1).Cells(k, 51).Value
lngZeile = Application.Match(CDbl(datTag), Columns(1), 0)
MsgBox lngZeile
Hier bekomme ich die Fehlermeldung Typenunverträglichkeit
Anzeige
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 11:52:13
Crazy
Hallo
dann liegt das Datum in der Zelle nicht in dem Datumsformat vor
steht da vielleicht das Datum mit Uhrzeit drin?
MfG Tom
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 11:58:43
Crazy
Hallo
probier mal das hier
Sub Test()
Dim lngZeile As Long
Dim datTag As Date
With Worksheets(1)
datTag = DateSerial(Year(.Cells(k, 51)), Month(.Cells(k, 51)), Day(.Cells(k, 51)))
End With
lngZeile = Application.Match(CDbl(datTag), Columns(1), 0)
MsgBox lngZeile
End Sub
MfG Tom
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 12:10:44
Philipp
Bekomme, wenn ich es genau so kopiere immer noch eine Typenunverträglichkeit Meldung :-/
Das Datum in der Zelle ist bspw. : 02.01.2017
genau so steht es in der Zelle. Ohne Uhrzeit oder sonstiges. Und dieses Datum möchte ich im anderen Sheet finden und dazu den Namen schreiben...
Gruß
Phil
Anzeige
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 15:26:03
Crazy
Hallo
lass doch mal dieses Makro über deine Zelle laufen
die Zelle mit dem Datum entsprechend anpassen
ich hab in meinem Test Zelle K1 genommen
Sub test()
If IsDate(Range("K1").Value) Then
MsgBox "der inhalt der Zelle ist ein Datum in diesem Format" & vbLf & Range("K1").Value
Else
MsgBox "da ist ein anderes Fomat drin"
End If
End Sub
MfG Tom
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 15:33:50
Philipp
Hmm scheinbar ist in meiner Kalenderspalte kein gültiges Datumsformat. Dann ist natürlich klar dass ich, wenn ich nach einem "Apfel" suche keine "Birne" finde :-/.
Wie kann ich denn sicherstellen, dass es sich um ein Datum handelt? In der Liste in der ich die Geburtstage eingetragen habe, sind sie im richtigen Format, nur beim Kalender hat das irgendwie nicht funktioniert...
Anzeige
AW: Problem mit .Find bei Suche nach Datum
18.01.2017 15:36:50
Crazy
Hallo
markiere mal deine Spalte und dann mit
Text in Spalten
vielleicht kriegste das so umgewandelt
MfG Tom

24 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige