Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datum als Text formatieren

Datum als Text formatieren
17.07.2024 14:14:36
Chris
Hallo Forum,

mit unten stehendem Makro erzeuge ich eine Abfolge von Datumsangaben. Jede Zelle möchte ich im Anschluss als Textformatieren, so dass die Inhalte des Formats ddd mm.dd.yyyy als Text angezeigt werden.

Es wird jedoch nicht der Tag als Textangezeicht, nur die Zahlen.

Wie muss man das Makro ändern?

With ActiveSheet


i = 3
.Range("B:B").Clear
.Range("B3").Value = Range("A1").Value
.Range("B" & i).DataSeries Rowcol:=xlColumns, Type:=xlChronological, Date:= _
xlDay, Step:=1, Stop:=Range("A2").Value, Trend:=False

i = i + 1

lcol = .Cells(Rows.Count, 2).End(xlUp).Row
.Range("B3:B" & lcol).NumberFormat = "ddd dd.mm.yy"

For idat = 3 To lcol
.Range("B" & idat) = CStr(.Range("B" & idat)) 'hier wird der Tagname nicht angezeigt.
Next

End With

End Sub



Danke und GRuß
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum als Text formatieren
17.07.2024 14:22:58
Oberschlumpf
Hi,

anstatt von...


.Range("B" & idat) = CStr(.Range("B" & idat))

...versuch mal...


.Range("B" & idat) = CStr(.Range("B" & idat).Text)

...hilft nicht?...dann vllt...


.Range("B" & idat).Text = CStr(.Range("B" & idat).Text)

...hilft auch nicht? = ich weiß auch nich mehr

Ciao
Thorsten
Anzeige
AW: Datum als Text formatieren
17.07.2024 14:36:50
daniel
Hi
du hast momentan nur das Datum in den Zellen und das sind Zahlen.
mit .Range("B" & idat) greifst du, weil du keine Eigenschaft explizit angegeben hast, auf den .Value-Wert der Zelle zu und das ist immer der unformatierte Zellwert, also eine Zahl.

wenn du die Datumsreihe als Text wie über das Zahlenformat angezeigt in den Zellen willst, musst du das so machen:
.Range("B" & idat) = "'" & .Range("B" & idat).Text


es geht aber auch einfacher per Formel (funktioniert allerdings nur mit deutschem Excel, sonst müsste das Zahlenformat der Textfunktion angepasst werden)

With Range("B3").Resize(1 + Range("A2").Value - Range("A1").Value, 1)

.Formula = "=TEXT($A$1+ROW(A1)-1,""TTT TT.MM.JJJJ"")"
.Formula = .Value
End With

Anzeige
AW: Datum als Text formatieren
17.07.2024 14:50:38
Onur
For idat = 3 To lcol

.Range("B" & idat) = Format(.Range("B" & idat) ; "ddd dd.mm.yy") 'hier wird der Tagname nicht angezeigt.
Next
AW: Datum als Text formatieren
17.07.2024 14:26:31
Chris
Hallo Throsten,

Die zweite Möglichkeit funktioniert.



.Range("B" & idat) = CStr(.Range("B" & idat).Text)



Danke!
Chris
Anzeige
AW: Datum als Text formatieren
17.07.2024 14:37:41
Oberschlumpf
Hi,

nur zur Info:

die von dir gezeigte Lösung, die funktioniert, ist aber mein ERSTER Vorschlag, nich der 2. ;-)

Ciao
Thorsten
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige