Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
764to768
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
764to768
764to768
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

mit VBA Datumszellen als Text formatieren

mit VBA Datumszellen als Text formatieren
15.05.2006 11:55:30
Peter
Guten Tag
Ich habe eine Tabelle, in welche ich regelmässig Daten importiere. Aus dem Import habe ich in Spalte U ab Zeile 5 bis 90 oder weiter jeweils das Datum in Form einer seriellen Zahl.
Damit meine weiteren Makros laufen, muss ich diese serielle Zahl in das Datum umwandeln, es muss sich jedoch um ein Text- und nicht ein Datumsformat handeln. Wie kann ich diese Formatierung vornehmen?
Beispiel: aus 38849 soll "12.05.2006" werden, jedoch wie gesagt nicht als Datumsformat sondern als Text.
Danke für Feedback.
Peter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mit VBA Datumszellen als Text formatieren
15.05.2006 12:17:56
wernerB.
Hallo Peter,
markiere den betreffenden Zellbereich und starte dann dieses Makro:

Sub Peter()
Dim c As Range, _
Dt As String
For Each c In Selection
With c
.NumberFormat = "m/d/yyyy"
Dt = .Text
.ClearContents
.NumberFormat = "@"
.Value = Dt
End With
Next c
End Sub

Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
AW: mit VBA Datumszellen als Text formatieren
15.05.2006 14:21:09
Peter
Hallo Werner
Vielen Dank für den Feedback.
Ich habe versucht, den Code etwas umzuschreiben, da ich nicht manuell einen Bereich markieren will, sondern einfach die erste Zelle in der Spalte anwähle und dann die Aktion ausführe, bis die Zelle leer ist.
Mein Problem ist nun, dass bei
.NumberFormat = "t/d/yyyy" (vgl. nachstehend Endstation ist.
Laufzeitfehler '1004': Die NumberFormat-Eigenschaft des Range Objektes
kann nicht festgelegt werden.
Kann mir jemand weiterhelfen?
Besten Dank, Peter

Sub textdat()
Dim zNr As Long, Dt As String
zNr = 5
Do While Cells(zNr, 21) <> ""  'Spalte U
With (Cells(zNr, 21))
.NumberFormat = "t/d/yyyy"
Dt = .Text
.ClearContents
.NumberFormat = "@"
.Value = Dt
End With
zNr = zNr + 1
Loop
End Sub

Anzeige
AW: mit VBA Datumszellen als Text formatieren
15.05.2006 15:10:24
Peter
Hallo miteinander
Ich habe nun mit Hilfe eines anderen Herber-Treads folgende Lösung gefunden:

Sub textdat()
Dim zNr As Long
zNr = 5
Do While Cells(zNr, 21) <> ""
If Cells(zNr, 21) <> 0 Then
Cells(zNr, 21) = Format((Cells(zNr, 21)), "DD.MM.YYYY")
Else
End If
zNr = zNr + 1
Loop
End Sub

Weshalb ein Textformat daraus geworden ist, ist mir nicht klar, vielleicht kann mir ja dies jemand erklären.
Danke, Peter
AW: mit VBA Datumszellen als Text formatieren
15.05.2006 15:23:23
WernerB.
Hallo Peter,
vielleicht versuchst Du es mal so (bitte ohne jegliche Veränderung!):

Sub textdat()
Dim c As Range, _
Dt As String, _
zNr As Long, laR As Long
zNr = 5
laR = Cells(Rows.Count, 21).End(xlUp).Row
If laR < zNr Then Exit Sub
Application.ScreenUpdating = False
For Each c In Range("U" & zNr & ":U" & laR)
With c
.NumberFormat = "m/d/yyyy"
Dt = .Text
.ClearContents
.NumberFormat = "@"
.Value = Dt
End With
Next c
Application.ScreenUpdating = True
End Sub

Gruß
WernerB.
Anzeige
AW: mit VBA Datumszellen als Text formatieren
15.05.2006 17:33:52
Peter
Hallo Werner
Vielen Dank.
Nun funktioniert es tadellos!
Peter
AW: mit VBA Datumszellen als Text formatieren
15.05.2006 12:20:19
Tino
Hallo,
meinst du vieleicht so?

Sub Datum()
'Zelle A1 = Datumformat
Dim Datum As String
Datum = Range("A1").Text
End Sub

Gruss
tino

110 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige