Excel-VBA Aktueller Monat
Ich habe das Spiel mit der date
in VBA und kann nicht den aktuellen Monat. Es scheint sehr einfach zu Holen Sie sich die aktuellen Jahres-und Tageszeit, wie getestet mit den folgenden:
MsgBox Year(Date)
MsgBox Day(Date)
MsgBox Year(Now)
MsgBox Day(Now)
Als ein paar einfache Beispiele.
Aber wie ist es möglich zu zeigen, den aktuellen Monat als eine Zahl (1, 2 usw), oder einen vollständigen Namen? Ich konnte das TODAY()
in eine Zelle ein und wandeln diese in VBA mit so etwas wie CurrentMonth = MonthName(Month(Sheet1.Range("A1")))
. Aber ich möchte in der Lage sein dies direkt in VBA für Excel.
Month(Now)
funktioniert nicht? Sollte es wieder 3- Nein, es nicht aus irgendeinem Grund, daher meine Verwirrung.
?month(date), month(now)
zurück3, 3
- was sehen Sie?- Interessant, wie es für mich funktioniert. Ich legte
? Month(Now)
in das Direktfenster ein, und es kamen wieder 3 für mich. Sie könnten versuchenMsgBox Application.Evaluate ("MONTH(TODAY())")
- Ich bekomme
Compile Error: Expected Array
wenn Sie versuchen, zu Durchlaufen. - Sie wahrscheinlich verwenden einige reservierte Wörter wie "date" als Feld-name oder eine variable. Zunächst lösen Sie Ihre compilation-Ausgabe.
- Sie haben deklariert eine variable/routine aufgerufen Monat irgendwo.
- Habe die Freitag-vibe an einem Donnerstag, ich war zu deklarieren Monat als string weiter oben im Skript. Funktioniert wie es sollte, jetzt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen,
Gibt die index-Nummer im Zusammenhang mit dem aktuellen Monat.
Jeeped code unten ist der kompakteste, aber um Ihnen eine Idee geben, wie Indizes arbeiten, den folgenden code zurück den Namen des Monats basierend auf dem index zurückgegeben:
Fanden eine einfachere Lösung, um den aktuellen Monat Name
Verwenden Sie einfach
MonthName(Month(Now))
und ordnen es in einen string.Month(Now)
gibt Ihnen die Nummer des Monats und dieMonthName()
verwendet diese Nummer, um den aktuellen Monat