ich habe ein recht umfangreiches Makro, (von dem ich hier nur den Teil poste, der meine Frage _ betrifft) (Version 2019)
'IMDB-Code, Schauspielername und Geburtsdatum in Archiv Tabelle eintragen
Sheets(personenArchivTabelle).Cells(naechsteZeilePersonenArchivTabelle, 1). _
_
_
Value = imdbCodeSchauspieler
Sheets(personenArchivTabelle).Cells(naechsteZeilePersonenArchivTabelle, 2). _
_
_
Value = schauspielerName
Sheets(personenArchivTabelle).Cells(naechsteZeilePersonenArchivTabelle, 3). _
_
_
Value = geburtsDatumSchauspieler
'Eintragen, dass ein Geburtsdatum aus dem Internet geholt wurde
'Steigt diese Zahl auf größer 1, hätte das Datum in der Archivtabelle stehe _
_
_
müssen
Sheets(personenArchivTabelle).Cells(naechsteZeilePersonenArchivTabelle, 4). _
_
_
Value = _
Sheets(personenArchivTabelle).Cells(naechsteZeilePersonenArchivTabelle, 4) _
_
_
.Value + 1
'Zelle mit Geburtsdatum färben, wenn vor 01.01.1900
'(Kein gültiges Excel-Datum)
If Year(geburtsDatumSchauspieler) > 1899 Then
Sheets(personenArchivTabelle).Cells(naechsteZeilePersonenArchivTabelle, _
_
_
3).Value = _
CDate(Sheets(personenArchivTabelle).Cells( _
naechsteZeilePersonenArchivTabelle, 3).Value)
Sheets(personenArchivTabelle).Cells(naechsteZeilePersonenArchivTabelle, _
_
_
3).Interior.ColorIndex = xlNone
Else
Sheets(personenArchivTabelle).Cells(naechsteZeilePersonenArchivTabelle, _
_
_
3).Interior.ColorIndex = 43
End If
'Nächste Zeile in PersonenArchivTabelle festlegen
naechsteZeilePersonenArchivTabelle = naechsteZeilePersonenArchivTabelle + 1
End If
'Geburtsdatum in ZielTabelle eintragen
Sheets(zielTabelle).Cells(naechsteZeileZielTabelle, 6).Value = _
geburtsDatumSchauspieler
'Zelle mit Geburtsdatum färben, wenn vor 01.01.1900
'(Kein gültiges Excel-Datum)
If Year(geburtsDatumSchauspieler) > 1899 Then
Sheets(zielTabelle).Cells(naechsteZeileZielTabelle, 6).Value = CDate(Sheets( _
_
_
zielTabelle).Cells(naechsteZeileZielTabelle, 6).Value)
Sheets(zielTabelle).Cells(naechsteZeileZielTabelle, 6).Interior.ColorIndex = _
_
_
xlNone
Else
Sheets(zielTabelle).Cells(naechsteZeileZielTabelle, 6).Interior.ColorIndex = _
_
_
43
End If
Das Makro färbt bekanntlich alle Zellen, in die es ein Datum vor dem 1.1.1900 schreibt grün.
Immer wenn das Makro fertig ist, gehe ich hin und nutze folgende UDF:
Function Text2Date(Datum$): Text2Date = CDate(Datum): End Function
um diese Daten in eine negative Zahl ohne Nachkommstellen umzuwandeln.
Kann man das irgendwie hinbekommen, dass das eigentliche Makro das bereits übernimmt?
Danke
Christian
PS: Zum Thema Beispieldatei, ist in diesem Fall schwer machbar, da es um Daten geht, die beim Start des Makros noch gar nicht in der Tabelle vorhanden sind, sondern durch das Makro aus dem Internet heruntergeladen werden. Bevor es da zu Problemen kommt weil jemand nicht weiß ob diese Datenquellen sicher sind und so, habe ich darauf verzichtet. Wenn es gar nicht anders geht, werde ich versuchen irgendetwas zusammenzustellen, weiß aber aus genanntem Grund im Moment noch nicht wie das aussehen könnte.
Gruß
Christian