Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Datumfeld in xx in 20xx umwandeln
07.03.2020 18:31:17
Thomas
Habe mal eine Fragen an die VBA-Experten,
ich habe eine Tabelle erstellt, wo ich Daten von einer Webseite importiert und die einzelnen Werte konvertiert habe, was auch fast perfekt funktioniert.
Eine Spalte wo vorher Text war und ein Datum z.B. 07.03.2020 drinstand habe ich in ein anderes Tabellenblatt kopiert. Das Datum erscheint korrekt, aber in der Zelle erscheint ein orangefarbenes Warndreieck.
Sobald ich darauf klicke, kann ich z.B. "XX in 20xx" wählen und die Zelle mit dem Datum ist dann auch ein echtes Datumfeld.
In einer anderen Zelle muss ich eine Datumdifferenz berechnen, die würde ohne o.g. Vorgehensweise die Anzahl Tage zwischen zwei Datumsfelder nicht berechnen.
Wie kann ich das in VBA realisieren?
Vielen Dank im Voraus
Thomas

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
mit CDate(DeinDatumText) ... owT
07.03.2020 18:34:14
Matthias
AW: mit CDate(DeinDatumText) ... owT
07.03.2020 19:16:57
Thomas
Hallo Matthias,
vielen Dank für den Tipp.
Das hat geklappt.
Wie kann ich eine bestehende Spalte, die die Datumswerten enthält mit cdate Bereich von bis (ist mor bekannt) komplett mit cdate umwandeln?
Vielen Dank im Voraus.
Thomas
AW: mit CDate(DeinDatumText) ... owT
07.03.2020 19:29:22
Thomas
Habe versucht z.B. die Spalte E im Zieltabellenblatt von E9 bis z.B. E100 per CDATE alle Werte zu bearbeiten.
Das klappt irgendwie nicht!
Zieltabellenblatt = "Tab1"
Range = "E9:E100"
Sheets(Zielabellenblatt).Range(Bereich) = CDate(Range(Bereich))
Da kommt ein Fehler, dass die Typen unverträglich sind?
Was mache ich falsch?
Anzeige
Multipliziere einfach mit 1 ... owT
07.03.2020 19:30:28
Matthias
AW: Multipliziere einfach mit 1 ... owT
07.03.2020 19:37:14
Thomas
Hallo MAtthias,
habe leider deine Antwort nicht verstanden, was ich mit 1 multiplizieren soll.
Kannst Du mal für mein Beispiel ein Codebeispiel posten?
Vielen Dank für Deine Mühe.
Thomas
ohne Code ...
07.03.2020 19:44:38
Matthias
Hallo
Schreibe in eine leere Zelle eine 1
Diese Zelle kopierst Du.
Nun markierst Du Deine Zellen mit dem Datum-Text
wählst mit der rechte Maustaste Inhalte einfügen - Multiplizieren
Format Datum einstellen. Das wars schon.
Gruß Matthias
AW: ohne Code ...
07.03.2020 19:59:26
Thomas
Hallo Matthias,
vielen Dank für Deine Mühe.
Habe es mittlerweile selbst gelöst wie folgt:
SpalteDatum = 5 ' Spalte E
ZeilenAnfang = 9
Tabellenname = "Tabelle3"
Dim a As Long, i As Long
With Sheets(Tabellenname)
.Columns(1).NumberFormat = "DD.MM.YY"
a = .Cells(Cells.Rows.Count, 1).End(xlUp).Row
For i = a To 9 Step -1
.Cells(i, SpalteDatum).Value = CDate(.Cells(i, SpalteDatum).Value)
Next
End With
Anzeige

379 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige