Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
944to948
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
944to948
944to948
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Monatsnamen ausgeben

Monatsnamen ausgeben
24.01.2008 10:25:01
jjo
Hallo Zusammen,
habe ein kleines Problem. Ich möchte mir einfach den Aktuellen Monat anzeigen lassen (im 2. Schritt den vorherigen Monat). Nun dachte ich mir um erstmal den laufenden Monat zu erhalten mache ich folgendes:

Sub Monatsausgabe()
MsgBox Format(DatePart("m", Date, , vbUseSystem), "MMMM")
End Sub


Aber nix da, es kommt Dezember raus, obwohl eine "1" angezeigt wird, wenn ich das MMMM Format nicht drum lege.
Nun die Frage, woran liegt das? Oder um das zu überspringen, was müsste ich machen, um IMMER den vergangenen Monat zu erhalten?
Vielen Dank im voraus.
Jörg

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Monatsnamen ausgeben
24.01.2008 10:30:46
Beverly
Hi Jörg,
MsgBox Format(Date, "MMMM")


AW: Monatsnamen ausgeben
24.01.2008 10:50:49
jjo
Hi Karin,
dankeschön - warum einfach wenns auch kompliziert geht ;)
Noch eine kleine Frage, wie kann ich denn nun letzten Monat ermitteln?
Danke vorab
Jörg

AW: Monatsnamen ausgeben
24.01.2008 11:00:32
Beverly
Hi Jörg,
MsgBox Format(DateSerial(Year(Date), Month(Date) - 1, Day(Date)), "MMMM")


AW: Monatsnamen ausgeben
24.01.2008 11:07:53
Erich
Hi Karin,
das mit dem Vormonat macht am Monatsende Probleme, wenn der Vormonat weniger Tage hat.
Am 31.03.2008 ist DateSerial(Year(Date), Month(Date) - 1, Day(Date)) = 02.03.2008, also auch im März,
weil es dem 31.02. nicht gibt.
Mein Vorschlag:
msgbox Format(DateSerial(0, Month(Date) - 1, 1), "MMMM")
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Monatsnamen ausgeben
24.01.2008 11:16:59
jjo
Hallo Karin, Hallo Erich,
danke nochmal für eure Mühen. Da eine Rückmeldung meinerseits erst in 8 Tagen möglich ist, hier noch nix vom mir ;)
Danke
Jörg

AW: Monatsnamen ausgeben
24.01.2008 11:21:48
Beverly
Hi Jörg,
du kannst doch das Systemdatum ändern.


AW: Monatsnamen ausgeben
24.01.2008 11:17:54
Beverly
Hi Erich,
bei mir (Excel2003) wird auch mit meinem Code jeden Monat und an jedem Tag richtig gerechnet.


AW: Monatsnamen ausgeben
24.01.2008 11:28:11
Erich
Hi Karin,
dass Excel/VBA hier richtig rechnen, meine ich sicher auch. Aber ob ein Ausdruck das gewünschte Ergebnis liefert?
Probier mal

Sub aaa()
Dim ddat As Date
ddat = "31.03.2008"
'  MsgBox Format(ddat, "MMMM")
MsgBox Format(DateSerial(0, Month(ddat) - 1, 1), "MMMM")
MsgBox Format(DateSerial(Year(ddat), Month(ddat) - 1, Day(ddat)), "MMMM")
'  MsgBox DateSerial(0, Month(ddat) - 1, 1)
MsgBox DateSerial(Year(ddat), Month(ddat) - 1, Day(ddat))
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Monatsnamen ausgeben
24.01.2008 12:05:00
Beverly
Hi Erich,
ja, das stimmt schon - in diesem Fall es ist eine Frage der Formatierung der Ausgabe. Mit deinem Code wird in der unformatierten Anzeige der 01.02.2000 ausgegeben.


AW: Monatsnamen ausgeben
24.01.2008 15:01:52
Erich
Hi Karin,
der 01.02.2000 ist hier das gewünschte Ergebnis. Tag und Jahr sind hier gleichgültig,
und Vormonat Februar ist für den 31.03.2008 wohl richtig.
Hier noch eine Alternative (bei der man auch das Jahr mit ausgeben könnte):
MsgBox Format(DateSerial(Year(Date), Month(Date), 0), "mmmm")
MsgBox Format(DateSerial(Year(Date), Month(Date), 0), "mmmm yyyy")
Der 0te des laufenden Monats ist automatisch der letzte des Vormats.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige