Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Nächst kleineres Datum in Spalte suchen

Forumthread: Nächst kleineres Datum in Spalte suchen

Nächst kleineres Datum in Spalte suchen
04.10.2017 12:22:36
Aaron
Hallo zusammen,
ich habe in einer Excel-Datei in der Spalte A, ab Zeile 4 eine Reihe von Datumsangaben, fortlaufend nach unten.
Mit:
Dim SearchFor As Range
Set SearchFor = Worksheets("Tabelle1").Columns(1).Find(Date, Lookat:=xlWhole)
suche ich nach dem heutigen Datum und das klappt auch gut, wenn in dieser Spalte das heutige Datum steht. Steht das nicht drin kommt ein Fehler, in dem Fall bräuchte ich das nächst kleinere Datum - also z.B. wenn der 04.10 (Heute) nicht gefunden wird, dann nehmen wir den 03.10 (in der Tabelle vorhanden).
Kann mir da jemand helfen?
Eine Formel würde mir nichts nützen, weil ich mit dem gefundenen Wert weiterarbeiten möchte.
Viele Grüße und Danke
Aaron
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nächst kleineres Datum in Spalte suchen
04.10.2017 12:48:25
Daniel
Hi
damit das funktioniert, muss die Tabelle so aufgebaut sein:
- Überschrift in Zeile 1
- Daten ab Zeile 2
- Daten sind aufsteigend sortiert.
- die Datumswerte müssen echte Datumswerte sein (rechtsbündig)
dann mit diesem Code:
Set SearchFor = Worksheets("Tabelle1").Cells(Worksheetfunction.Match(CLng(Date), Worksheets("Tabelle1").Columns(1), 1), 1)
Gruß Daniel
Anzeige
AW: Nächst kleineres Datum in Spalte suchen
04.10.2017 13:45:13
Aaron
Hallo Daniel,
ich bin begeistert! Klappt einwandfrei, recht herzlichen Dank!
Viele Grüße
Aaron
;
Anzeige
Anzeige

Infobox / Tutorial

Nächst kleineres Datum in Spalte suchen


Schritt-für-Schritt-Anleitung

Um das nächst kleinere Datum in einer Excel-Spalte zu finden, befolge diese Schritte:

  1. Daten vorbereiten:

    • Stelle sicher, dass deine Tabelle wie folgt aufgebaut ist:
      • Überschrift in Zeile 1
      • Datumswerte ab Zeile 2 in Spalte A
      • Die Datumswerte müssen echte Datumswerte sein (rechtsbündig) und aufsteigend sortiert sein.
  2. VBA-Editor öffnen:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Modul einfügen:

    • Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  4. Code einfügen:

    • Füge folgenden VBA-Code in das Modul ein:
    Dim SearchFor As Range
    Set SearchFor = Worksheets("Tabelle1").Cells(WorksheetFunction.Match(CLng(Date), Worksheets("Tabelle1").Columns(1), 1), 1)
  5. Code ausführen:

    • Führe den Code aus, um das nächst kleinere Datum zu finden.

Häufige Fehler und Lösungen

  • Fehler: Kein Ergebnis gefunden

    • Lösung: Stelle sicher, dass die Datumswerte in der Spalte A korrekt formatiert sind und aufsteigend angeordnet sind.
  • Fehler: Laufzeitfehler bei der Ausführung

    • Lösung: Überprüfe, ob die Daten in der Spalte A echte Datumswerte sind. Sie sollten rechtsbündig angezeigt werden.

Alternative Methoden

Wenn Du nicht mit VBA arbeiten möchtest, kannst Du auch die Funktion AGGREGAT nutzen, um das nächst kleinere Datum zu finden:

=AGGREGAT(14, 6, A2:A100/(A2:A100<HEUTE()), 1)

Diese Formel gibt das größte Datum zurück, das kleiner als das heutige Datum ist. Achte darauf, den Bereich A2:A100 entsprechend deiner Daten anzupassen.


Praktische Beispiele

Angenommen, Du hast folgende Daten in Spalte A:

A
01.10.2023
02.10.2023
03.10.2023
04.10.2023

Wenn heute der 04.10.2023 ist und kein Wert gefunden wird, gibt der VBA-Code oder die AGGREGAT-Formel den 03.10.2023 zurück.


Tipps für Profis

  • Verwende die Option Explicit-Anweisung am Anfang Deines VBA-Codes, um sicherzustellen, dass alle Variablen deklariert sind. Das hilft, Fehler zu vermeiden.

  • Überprüfe die Datumsformate in Deiner Tabelle, um sicherzustellen, dass sie korrekt erkannt werden.


FAQ: Häufige Fragen

1. Wie kann ich das Datum in einer anderen Spalte suchen?
Du kannst den Code anpassen, um eine andere Spalte zu durchsuchen. Ändere einfach Columns(1) in die entsprechende Spaltennummer.

2. Funktioniert das auch in Excel für Mac?
Ja, der VBA-Code sollte auch in der Mac-Version von Excel funktionieren, solange Du den VBA-Editor öffnen kannst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige