Zum Hauptinhalt springen

VBA Excel: So erhalten Sie den Monatsnamen in einer Zelle

VBA-Makros in Microsoft Excel bieten umfangreiche Möglichkeiten zur Automatisierung Routineaufgaben. Eine davon ist, den numerischen Wert des Monats in einen Textnamen umzuwandeln. Wenn Sie beispielsweise die Zahl "1" in eine Zelle eingeben, erhalten Sie automatisch den Text "Januar". Dies ist besonders nützlich, wenn Sie Berichte erstellen und Daten analysieren. In diesem Artikel werden wir uns einige Möglichkeiten ansehen, wie Sie diese Aufgabe mit VBA implementieren können.

Der erste Weg basiert auf der Verwendung der CHOOSE-Funktion. Wenn Sie eine Zahl zwischen 1 und 12 in eine Zelle eingeben, gibt die Funktion den entsprechenden Monatsnamen aus der vordefinierten Liste zurück. Zum Beispiel: =CHOOSE(A1, "Januar", "Februar", "März", . "Dezember"). Dieser Ansatz ist einfach und unkompliziert, erfordert jedoch die manuelle Eingabe aller Monatsnamen. Es kann jedoch nützlich sein, wenn sich der Name des Monats je nach Region oder Sprache ändern kann.

Eine flexiblere Lösung besteht darin, die Funktion VLOOKUP (oder HLOOKUP für die horizontale Suche) zu verwenden, mit der Sie den entsprechenden Wert in einem Bereich finden und einen angrenzenden Wert zurückgeben können. In diesem Fall können Sie eine Tabelle mit den numerischen Werten der Monate in einer Spalte und deren Namen in einer benachbarten Spalte erstellen. Dann können Sie mit der VLOOKUP-Funktion den numerischen Wert in der Tabelle finden und den entsprechenden Monatsnamen zurückgeben. Mit diesem Ansatz können Sie die Monatsnamen leicht ändern oder neue hinzufügen, ohne die Formel selbst zu ändern.

Beispielformel mit der Funktion VLOOKUP: =VLOOKUP(A1, B1:C12, 2, FALSE), wobei A1 die Zelle mit dem numerischen Wert des Monats ist, B1:C12 der Bereich der Tabelle mit den Zahlen und Monatsnamen ist.

Abschließend bietet VBA Excel mehrere Möglichkeiten, den Monatsnamen in einer Zelle zu erhalten. Die Auswahl einer bestimmten Lösung hängt von den Anforderungen des Projekts und den Vorlieben des Benutzers ab. Verwenden Sie diese Methoden, um die Arbeit mit Daten zu vereinfachen und die Effizienz Ihrer Arbeit in Microsoft Excel zu verbessern.

Wie bekomme ich den Monatsnamen in einer Zelle

Eine häufige Frage bei der Arbeit mit VBA Excel besteht darin, den Monatsnamen basierend auf einem numerischen Wert in einer bestimmten Zelle zu erhalten. Wenn beispielsweise die Zahl 1 in Zelle A1 enthalten ist, möchten wir, dass in Zelle B1 automatisch "Januar" angezeigt wird. Hier sind einige Möglichkeiten, wie Sie dies tun können:

    Verwenden der Funktion CHOOSE() Mit der Funktion CHOOSE() können Sie basierend auf einem Index einen Wert aus einer bestimmten Liste auswählen. In diesem Fall können wir eine Liste der Monatsnamen erstellen und CHOOSE() verwenden, um den entsprechenden Wert auszuwählen.

Dim monthNumber As IntegerDim monthName As StringmonthNumber = Range("A1").ValuemonthName = Choose(monthNumber, "Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь")Range("B1").Value = monthName
Dim monthNumber As IntegerDim monthName As StringmonthNumber = Range("A1").ValuemonthName = WorksheetFunction.MonthName(monthNumber)Range("B1").Value = monthName
Dim monthNumber As IntegerDim monthNames As VariantDim monthName As StringmonthNumber = Range("A1").ValuemonthNames = Array("Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь")monthName = monthNames(monthNumber - 1)Range("B1").Value = monthName

Wählen Sie eine der oben genannten Methoden aus, die für Ihre spezielle Aufgabe am bequemsten und am besten geeignet ist. Beachten Sie, dass das Speichern von Daten in Zelle B1 während der Codeausführung erforderlich ist, um die Funktion "Makros" in Excel zu aktivieren.

Verwenden der Textfunktion

Die Funktion "Text" ist in VBA Excel verfügbar, mit der Sie Daten in Zellen mit einer Vielzahl von Formaten formatieren können, einschließlich Datums- und Zeitformaten. Diese Funktion kann nützlich sein, wenn Sie den Monatsnamen in einer Zelle abrufen.

Die Verwendung der Textfunktion zum Abrufen des Monatsnamens in einer Zelle umfasst zwei Schritte:

  1. Konvertieren eines Zellenwerts in ein Datumsformat
  2. Verwenden der Textfunktion zum Abrufen des Monatsnamens

Hier ist ein Beispiel für die Verwendung der Textfunktion, um den Monatsnamen in einer Zelle zu erhalten:

Sub GetMonthName()Dim dateValue As DateDim monthName As String' Преобразование значения ячейки в формат датыdateValue = CDate(Range("A1").Value)' Использование функции "Текст" для извлечения названия месяцаmonthName = WorksheetFunction.Text(dateValue, "mmmm")' Вывод результата в ячейку B1Range("B1").Value = monthNameEnd Sub

In diesem Beispiel wird die Funktion "Text" verwendet, um den vollständigen Monatsnamen aus dem Wert von Zelle A1 abzurufen. Das Ergebnis wird in Zelle B1 gespeichert.

Mit der Textfunktion können Sie die Formatierung der Ergebnisse in einer Zelle entsprechend Ihren Anforderungen ändern. Sie können beispielsweise das Format "mmm" verwenden, um den abgekürzten Namen des Monats abzurufen, oder das Format "mm", um den numerischen Code des Monats abzurufen.

Die Verwendung der Textfunktion in Excel VBA kann für die Arbeit mit Daten und Zeiten nützlich sein, einschließlich des Abrufs des Monatsnamens in Zellen. Sie können mit verschiedenen Formaten und Funktionen experimentieren, um das gewünschte Ergebnis zu erzielen.

Formatieren eines Datums mit der Funktion "Format"

Die Syntax der Funktion "Format" lautet wie folgt:

AusdruckFormat
Format(Ausdruck, "Format")Ein Ausdruck ist ein Datums- oder Uhrzeitwert, den Sie formatieren möchten. "Format" ist eine Zeichenfolge, die das Format angibt, in dem der Ausdruck angezeigt werden soll.

Beispiele für die Verwendung der Funktion "Format":

AusdruckErgebnis
Format(#12/31/2025#, "dd-mm-yyyy")31-12-2025
Format(#12/31/2025#, "mm/dd/yyyy")12/31/2025
Format(#12/31/2025#, "dd MMM yyyy")31 dez 2025

Wie aus den Beispielen hervorgeht, ist das zweite Argument der Funktion "Format" eine Zeichenfolge, die verschiedene Formatzeichen enthält, die die Datumsanzeige bestimmen. Beispiel: "dd" ist Tag, "mm" ist Monat, "yyyy" ist Jahr usw. Um den Monatsnamen anzuzeigen, müssen Sie das Symbol "MMM" verwenden.

Mit der Funktion "Format" können Sie auch verschiedene Formatierungsbedingungen verwenden, z. B. die Anzeige des Datums im 12-Stunden-Format ("hh") oder im 24-Stunden-Format ("HH") usw. Weitere Informationen zu den Funktionen der Funktion "Format" finden Sie in der offiziellen VBA-Excel-Dokumentation.

Abschließend ist die Funktion "Format" ein leistungsfähiges Werkzeug, um ein Datum in Excel-Zellen mit VBA zu formatieren. Es ermöglicht dem Benutzer, die Datumsanzeige flexibel an seine Anforderungen und Vorlieben anzupassen.

Anwenden der Formel-Funktion

In VBA Excel können Sie die Formel-Funktion verwenden, um den Monatsnamen in einer Zelle abzurufen. Mit dieser Funktion können Sie Formeln verwenden, die auf bestimmte Zellen in einem Datenbereich angewendet werden können.

Um die Formel anzuwenden, müssen Sie zuerst die Zelle oder den Zellbereich auswählen, in dem Sie die Monatsnamen abrufen möchten. Verwenden Sie dann die Range-Methode, mit der Sie den Zellbereich angeben können, auf den die Formel angewendet werden soll.

Im Folgenden finden Sie ein Beispiel für VBA-Code, der veranschaulicht, wie die Formel verwendet wird, um den Monatsnamen in einer Zelle abzurufen:

Sub GetMonthName()Dim rng As RangeSet rng = Range("A1:A12") ' Указание диапазона ячеекrng.Formula = "=TEXT(EOMONTH(TODAY(),-ROW(A1)+1),"MMMM")" ' Применение функции "Формула"End Sub

In diesem Codebeispiel wird die Funktion "FORMULA" verwendet, mit der Sie die Formel angeben können, die auf die ausgewählten Zellen angewendet werden soll. In diesem Fall wird die Formel "=TEXT(EOMONTH(TODAY(),-ROW(A1)+1),"MMMM")" verwendet, die den Monatsnamen für jede Zelle im Bereich zurückgibt. Die Formel "EOMONTH(TODAY(),-ROW(A1)+1)" berechnet den letzten Tag eines jeden Monats, und die Funktion "TEXT" konvertiert das Datum in den Namen des Monats.

Nachdem Sie diesen Code ausgeführt haben, werden die Monatsnamen in den Zellen im ausgewählten Zellbereich angezeigt.

Mit der Formel-Funktion in VBA Excel können Sie Formeln bequem und effizient auf bestimmte Zellen anwenden, einschließlich des Namens des Monats in einer Zelle. Dies ist besonders nützlich, wenn Sie die Verarbeitung von Daten und die Ausführung bestimmter Vorgänge in Excel-Tabellen automatisieren müssen.