Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
900to904
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
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Datum suchen mit VBA
02.09.2007 14:58:00
Anna
Hallo,
hier ein weiteres Problem:
ich habe eine UF erstellt, in der man den Namen des Mitarbeiters eintragen kann, der in der Tabelle dann gesucht und markiert wird. Das klappt auch wunderbar.
Nun wollte ich das selbe für ein Datum machen, welches in den Zellen A1:XX1 steht.
Diese Zellen ind als Datum formatiert.
Leider gibt er mir jedesmal die Meldung "Datum nicht gefunden"
Was habe ich falsch gemacht?
Hier ein mal der Quellcode
Dim zelles As Range
Dim bereichs As Range
Dim datum As String
datum = TextBox1.Text
Set bereichs = Sheets("Urlaubstage").Range("A1:E1")
bereichs.Select
Set zelles = bereichs.Find(datum, lookat:=xlWhole, LookIn:=xlValues)
If zelles Is Nothing Then
MsgBox "Datum nicht gefunden"
Else
MsgBox "Datum befindt sich in Zelle" & zelles.Address
End If

Vielen lieben Dank für Eure Hilfe
Anna

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum suchen mit VBA
02.09.2007 15:02:00
Knut
Versuchs mal so:
Dim zelles As Range
Dim bereichs As Range
Dim datum As Date
datum = TextBox1.Text
Set bereichs = Sheets("Urlaubstage").Range("A1:E1")
Set zelles = bereichs.Find(what:=datum, lookat:=xlWhole, LookIn:=xlValues)
If zelles Is Nothing Then
MsgBox "Datum nicht gefunden"
Else
MsgBox "Datum befindt sich in Zelle" & zelles.Address
End If

AW: Datum suchen mit VBA
02.09.2007 21:13:55
Anna
Vielen Dank,
aber leider gibt er mir wieder die Meldung "Datum nicht gefunden".................... :-(
Wenn ich an dieser Stelle ein Break setze und mit F8 weiterlaufe ist zelles nothing, also leer. Woran kann das liegen?
LG
Anna

Anzeige
AW: Datum suchen mit VBA
02.09.2007 22:02:18
Thomas
Hallo Anna
Das liegt meiner Meinung nach am Datumsformat.
ich denke Du musst den Wert aus Deiner Textbox (Text) in ein Datum umwandeln, und zwar genau das Format in den Zellen die Du untersuchen willst.
Zum Beispiel: datum=CDate(FormatDateTime(datum, vbShortDate)) ... entspricht 02.09.2007 ... usw. siehe Hilfe
Gruß Thomas

AW: Datum suchen mit VBA
02.09.2007 22:03:00
Knut
Ich habs nicht ausprobiert. Ich schaetze dein Problem ist folgendes : du hast in der Textbox ein Datum stehen. In der Zelle steht das Datum aber intern als Zahl - zum Beispiel: 3395. nun musst du zunaechst Textbox.value nach Datumsformat bringen, also damit das System weiß, dass du Datum suchst.
Schau Dir mal folgende Befehle an:
CDate, Format, Dateserial
Versuchs mal mit textbox1.value
zelles ist nothing weil nichts gfunden wurde ;-)
Leider hab ich jetzt keine Zeit mehr.
Gruß,
Knut

Anzeige
AW: Datum suchen mit VBA
02.09.2007 22:08:27
Josef
Hallo Anna,
wenn in der ersten Zeile ein "richtiges" Datum steht, dann funktioniert der Code.
Private Sub CommandButton1_Click()
Dim zelles As Range
Dim bereichs As Range
Dim datum As Date

datum = TextBox1.Text

Set bereichs = Sheets("Urlaubstage").Range("A1:E1")

Set zelles = bereichs.Find(what:=datum, lookat:=xlWhole, LookIn:=xlValues)

If zelles Is Nothing Then
    MsgBox "Datum nicht gefunden"
Else
    MsgBox "Datum befindt sich in Zelle" & zelles.Address
End If

End Sub

Gruß Sepp

Anzeige
AW: Datum suchen mit VBA
02.09.2007 22:37:00
Anna
Juhu...............
Es funktioniert. Ihr seit unbezahlbar.......................................
Vielen Dank
LG Anna

AW: Datum suchen mit VBA
02.09.2007 23:01:36
Anna
Oh, das nächste Problem.
Ich habe die den selben Suchlauf auch für die Mitarbeiter gemacht:
Mitarbeiter befindet sich in B12 und Datum in C1 (zum Beispiel)
Jetzt hatte ich die "super" Idee, dass das Programm sich die Zellen merkt und in die Schnittstelle der beiden "Urlaub" einträgt.
Geht das überhaupt?
LG Anna

AW: Datum suchen mit VBA
02.09.2007 23:04:52
Josef
Hallo Anna,
ja, das geht.
die Schnittstelle ergibt sich aus der Zeile des gefundenen Mitarbeiter und der Spalte des gefundenem Datums.

cells(Zeile, Spalte)= "Urlaub"


Es währe aber einfacher wenn du deinen gesamten Code posten würdest.

Gruß Sepp

Anzeige
AW: Datum suchen mit VBA
02.09.2007 23:27:30
Anna
Hallo Sepp,
leider funktioniert es nicht.... Er sagt dann immer typen unverträglich
Hier der gesamte Code

Private Sub CommandButton1_Click()
Dim zelle As Range
Dim bereich As Range
Dim begriff As String
Dim ZEILE As Range
Dim SPALTE As Range
Dim zelles As Range
Dim bereichs As Range
Dim datum As Date
begriff = ComboBox1.Text
If begriff = "" Then MsgBox " Bitte Mitarbeiter auswählen"
Set bereich = Sheets("Urlaubstage").Range("B3:B16")
Set zelle = bereich.Find(begriff, lookat:=xlWhole, LookIn:=xlValues)
If zelle Is Nothing Then
MsgBox "Mitarbeiter nicht gefunden"
Else
MsgBox "Mitarbeiter befindt sich in Zelle" & zelle.Address
End If
zelle.Select
datum = TextBox1.Value
datum = CDate(FormatDateTime(datum, vbShortDate))
Set bereichs = Sheets("Urlaubstage").Range("A1:AB1")
Set zelles = bereichs.Find(what:=datum, lookat:=xlWhole, LookIn:=xlValues)
If zelles Is Nothing Then
MsgBox "Datum nicht gefunden"
Else
MsgBox "Datum befindt sich in Zelle" & zelles.Address
End If
Cells(zelle, zelles) = "u"


Vielen Dank
LG Anna

Anzeige
AW: Datum suchen mit VBA
03.09.2007 06:38:00
Anna
Hallo Sepp,
leider funktioniert es nicht.... Er sagt dann immer typen unverträglich
Hier der gesamte Code

Private Sub CommandButton1_Click()
Dim zelle As Range
Dim bereich As Range
Dim begriff As String
Dim ZEILE As Range
Dim SPALTE As Range
Dim zelles As Range
Dim bereichs As Range
Dim datum As Date
begriff = ComboBox1.Text
If begriff = "" Then MsgBox " Bitte Mitarbeiter auswählen"
Set bereich = Sheets("Urlaubstage").Range("B3:B16")
Set zelle = bereich.Find(begriff, lookat:=xlWhole, LookIn:=xlValues)
If zelle Is Nothing Then
MsgBox "Mitarbeiter nicht gefunden"
Else
MsgBox "Mitarbeiter befindt sich in Zelle" & zelle.Address
End If
zelle.Select
datum = TextBox1.Value
datum = CDate(FormatDateTime(datum, vbShortDate))
Set bereichs = Sheets("Urlaubstage").Range("A1:AB1")
Set zelles = bereichs.Find(what:=datum, lookat:=xlWhole, LookIn:=xlValues)
If zelles Is Nothing Then
MsgBox "Datum nicht gefunden"
Else
MsgBox "Datum befindt sich in Zelle" & zelles.Address
End If
Cells(zelle, zelles) = "u"


Vielen Dank
LG Anna

Anzeige
AW: Datum suchen mit VBA
03.09.2007 07:47:38
Wuxinese
Hallo Anna,
probier mal den folgenden Code:

Private Sub CommandButton1_Click()
Dim zelle As Range
Dim bereich As Range
Dim begriff As String
Dim ZEILE As Double
Dim SPALTE As Double
Dim zelles As Range
Dim bereichs As Range
Dim datum As Date
begriff = ComboBox1.Text
If begriff = "" Then MsgBox " Bitte Mitarbeiter auswählen"
Set bereich = Sheets("Urlaubstage").Range("B3:B16")
Set zelle = bereich.Find(begriff, lookat:=xlWhole, LookIn:=xlValues)
If zelle Is Nothing Then
MsgBox "Mitarbeiter nicht gefunden"
exit sub
Else
MsgBox "Mitarbeiter befindt sich in Zelle" & zelle.Address
ZEILE = zelle.row
End If
zelle.Select
datum = TextBox1.Value
datum = CDate(FormatDateTime(datum, vbShortDate))
Set bereichs = Sheets("Urlaubstage").Range("A1:AB1")
Set zelles = bereichs.Find(what:=datum, lookat:=xlWhole, LookIn:=xlValues)
If zelles Is Nothing Then
MsgBox "Datum nicht gefunden"
exit sub
Else
MsgBox "Datum befindt sich in Zelle" & zelles.Address
SPALTE = zelles.column
End If
Cells(ZEILE, SPALTE) = "u"


Ich hoffe, ich hab da nix durcheinandergebracht, sollte so aber funktionieren...
Gruss
Rainer

Anzeige
AW: Datum suchen mit VBA
03.09.2007 10:21:52
Anna
Juhu,
Super, es funktioniert............
Vielen Dank

AW: Datum suchen mit VBA
02.09.2007 23:02:14
Anna
Oh, das nächste Problem.
Ich habe die den selben Suchlauf auch für die Mitarbeiter gemacht:
Mitarbeiter befindet sich in B12 und Datum in C1 (zum Beispiel)
Jetzt hatte ich die "super" Idee, dass das Programm sich die Zellen merkt und in die Schnittstelle der beiden "Urlaub" einträgt.
Geht das überhaupt?
LG Anna

97 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige