[erledigt] Excel 2010 und VBA; DATEDIF

Hallo Gemeinde,

hoffe bin im richtigen Bereich des Forums ;-)

Ich habe eine Excel-Datei welche ca. 35.000 Datensätze (Zeilen) enthält. In dieser Datei sind Namen und Geburtsdatum aufgelistet. Ich möchte gerne, wenn möglich alle Geburtsdaten mit der Heute()-Funktion vergleichen und alle die einem bestimmten Kriterium nicht entsprechen (zu jung o. zu alt) löschen lassen bzw. farbig markieren oder so etwas.

Ich kenne die Funktion =DATEDIF(A1;HEUTE();"y") Aber das für 35.000 Datensätze ist schon etwas krass und ziemlich zeitaufwendig.

Gibt es dort vielleicht eine effektivere Methode, wie ein Makro oder ähnliches?

Sorry, aber ich bin echt nicht so der VBA-Freak. Würde mich freuen wenn sich jemand dort findet und mir Hilfestellung gibt.

Vielen Dank :-)
 
Nach welchen Schema ist die Datei aufgebaut?

Name | Geb.Day | Sonstiges ???

greetz
chris
 
Name | Vorname | Geb.-Datum |

und noch einige anderen Spalten, welche allerdings nicht so relevant sind, denke ich.
 
Wollte grade anfangen was zu basteln (ob es klappt weiß ich nich), aber du kannst doch auch einfach sagen er soll nach datum sortiren "Benutzerdefnierter Filter" und sagen er soll nen bestimmten Zeitraum ausblenden (den wo du behalten willst).
Das was dann übrig bleibt Markieren -> Löschen -> Fertig, oder gibt es da dann Probleme?

greetz
chris
 
Mit dem Autofilter habe ich soweit alles nach Kriterien sortiert bzw. gefiltert.

Problem ist, so denke ich, dass ich nur noch die Personen benötige die zw. 35 und 85 J. alt sind.

Nach ein wenig Recherche war ich der Meinung dass es nur mit der DATEDIF-Funktion funktioniert oder automatisiert mit einem Makro.

Vielleicht liege ich da aber auch verkehrt im Ansatz.
 
Habe es gerade mit einer Pseudoliste bei mir Probiert

Datum habe ich im Format TT.MM.YYYY gemacht. Hat Excel Sofort als Datum erkannt.
ÜBerschrift (erste Zeile) war "Datum" habe die Spalte markiert und auf "Sortieren und Filtern --> Filtern" gedrückt.
Danach hatte ich bei Datum nen Dropdown Feld.

Da habe ich dann "Datumsfilter" --> "Benutzerdefinierter Filter" gewählt und dort habe ich eingestelllt. "Ist nach" %Datum% UND ist vor %Datum% damit hatte ich nur noch die Werte die ich wollte.

Ich Arbeite unter Office 2010 wenn mir deine Version sagst schau ich ob ich die Version noch irgendow habe und sg dir wie es ind einer Version geht.

greetz
chris
 
Ja, so habe ich auch gearbeitet, jedoch kristalisierte sich noch ein Fehler heraus, dass die Daten alle mit einem einfachen Hochkomma beginnen und auch enden, so erkennt Excel das als Text und nicht als Datum.

War mir eben erst aufgefallen, ich depp!

Habe ebenfalls Office 2010

EDIT: Brauchst nichts mehr basteln, vielen Dank dafür.

Habe es jetzt anders gelöst. Habe die DATEDIF Funktion in eine leere Zeile geschrieben und heruntergezogen, dann entsprechend gefiltert.

Also Danke noch einmal!
 
Zuletzt bearbeitet:
ok, das mit dem Hochkomma bricht meiner Methode natürlich das Genick ;-)
Aber schön dass es trotzdem geklappt hat, kannst du evtl. die Codezeile mal rüberschicken? Möchte sehen was du da genau gemacht hast kenne die funktion noch nicht ^^

greetz
chris
 
Ganz easy:

Code:
=DATEDIF(A2;HEUTE();"y")


  • DATEDIF ermittelt die Differenz zw. dem angegeben Datum und dem heutigen
  • A2 ist die entsprechende Spalte mit der Zeilennummer
  • HEUTE() ist denke ich klar
  • Das "y" steht für Jahresangabe, geht auch noch "m", "d" etc.
 
Zurück
Oben