Nach Datum von - bis suchen ?

Hallo an alle Wissenden.

Ich hoffe ihr könnt mir helfen.

Ich habe eine Liste, mit bestimmten Arbeiten, die zu bestimmten Zeiten fällig werden.
Jetzt möchte ich zb. eingebn, das mir das Programm alle Arbeiten für die nächste Woche anzeigen soll (z.B. bis 27.06.2009)
Jetzt soll mir aus Tabelle2 alle Zeilen von heute bis diesem Datum in Tabelle 3 kopiert werden.

(Ich benutze VBA dafür)

Tabelle1 in A1 steht das Datum bis wann gesucht werden soll

Tabelle 2 befindet sich die Liste mit den Arbeiten
Wobei in der „F“ Spallte sich das Datum der fälligen Arbeit befindet

Tabelle 3 sollen die gefundenen Zeilen hineinkopiert werden
Das alte soll wieder überschrieben werden, so das immer nur die aktuellen in Tabelle3 stehen

Ich danke euch schon recht herzlich im Vorraus dafür

Mfg Anton

Hallo Anton,

lade mal eine Beispielmappe hoch mit FAQ:2606

Gruß
Reinhard

Datei liegt bereit
Hallo Reinhard.
Zuerst wieder einmal danke für deine Hilfe.

Mein Programm findest du unter
http://www.hostarea.de/server-06/Juni-64a6576fef.xls

Ich habe folgendes Problem:
In Tabelle2 in Zelle F3 wird mir von der TextBox2 (VBA-Formulare-WelcheWartungen) ein Datum hingesetzt, welches als Text formatiert wird.
Mit dem Button „Übernehmen“ wird unter anderem auch dieses als Text formatierte Datum in die Liste „WartungsIntervalle“ in Zelle F2 copiert.
Nur leider als Datum sondern als Text.
Jetzt habe ich das Problem, das ich nicht nach Datum Filtern kann, da in dieser Spalte einmal Text und einmal Datum vorkommen.
Wie bekomme ich dort den Wert als Datum?

Und die zweite Frage zum suchen, finden.
In der Tabelle „Wartungsintervalle“ soll nach bestimmten Werten gesucht werden (Benutzerdefiniert) z.B. Vom Datum zwischen 01.02.2009 bis 10.03.2009 und hier nur alle Maschinen „30 Scheibensieb“
Diese Werte sollen markiert werden, damit ich sie in eine extra Liste kopieren kann

Mit Filtern kann ich ja nur nach einer Liste suchen lassen, oder?

Ich hoffe, du kannst mir bei meinen Problemen weiterhelfen und danke dir recht herzlich dafür.

Rechtsklick auf die Spalte und unter Format den Typ auf Datum umstellen sollte helfen.

Falls das nicht funktioniert sind eventuell irgendwelche Leerzeichen oder eine nicht übliche Datumsformatierung im Spiel.

Grüezi Anton

Ich habe folgendes Problem:
In Tabelle2 in Zelle F3 wird mir von der TextBox2
(VBA-Formulare-WelcheWartungen) ein Datum hingesetzt, welches
als Text formatiert wird.

Warum das?
Übergib das Datum aus dem Label sauber als Datum (sorry, ich habe im Code nicht geprüft wo genau du das Datum in die Zelle schreibst - zu viele .Selects sind mir darin) indem Du mit:

CDate(‚DeinDatums-String‘)

arbeitest.

Mit dem Button „Übernehmen“ wird unter anderem auch dieses als
Text formatierte Datum in die Liste „WartungsIntervalle“ in
Zelle F2 copiert.
Nur leider als Datum sondern als Text.

Das ist dann anschliessend nicht mehr der Fall…

Jetzt habe ich das Problem, das ich nicht nach Datum Filtern
kann, da in dieser Spalte einmal Text und einmal Datum
vorkommen.

…und das passt dann ebenfalls.

Wie bekomme ich dort den Wert als Datum?

CDate() verwenden und damit ein echtes Datum in die Zelle schreiben.

Und die zweite Frage zum suchen, finden.
In der Tabelle „Wartungsintervalle“ soll nach bestimmten
Werten gesucht werden (Benutzerdefiniert) z.B. Vom Datum
zwischen 01.02.2009 bis 10.03.2009 und hier nur alle Maschinen
„30 Scheibensieb“
Diese Werte sollen markiert werden, damit ich sie in eine
extra Liste kopieren kann

Mit Filtern kann ich ja nur nach einer Liste suchen lassen,
oder?

Hmmm du kannst doch aber den Autofilter über alle Spalten setzen und dann in der Spalte ‚letzte Wartung‘ dein Datumsintervall und in der Spalte ‚Maschine‘ der gewünschte Typ.
Alle Zeilen, die den beiden Kriterien in den Spalten entsprechen werden dann angezeigt.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo.

Danke für deine Antwort.

Ich füge mit folgendem Befehl das Datum in die Zelle ein:
Private Sub TextBox2_Change()
Sheets(„Tabelle2“).Select
[F3] = Me.TextBox2.Value

Wie kann ich es hier (CDate) als Datum erzwingen?

Danke für deine Hilfe

Grüezi Anton

Danke für deine Antwort.

Ich füge mit folgendem Befehl das Datum in die Zelle ein:
Private Sub TextBox2_Change()
Sheets(„Tabelle2“).Select
[F3] = Me.TextBox2.Value

Wie kann ich es hier (CDate) als Datum erzwingen?

Hast Du in der Online-Hilfe die Infos zu CDate() nachgelesen?
Dann sollte eigentlich alles klar sein… :wink:

Ich würde das dann so lösen, dann wirst Du auch gleich das unnötige .Select los:

Private Sub TextBox2\_Change()
Sheets("Tabelle2").Range("F2").Value = CDate(Me.TextBox2.Value)
End Sub

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Danke
Ich danke dir, damit hat es super funktioniert.