VBA-månadsfunktion

Excel VBA-månad

VBA-månadsfunktion är en inbyggd funktion som används för att få månad från ett datum och den utgång som returneras av denna funktion är ett heltal som sträcker sig från 1 till 12. Denna funktion extraherar endast månadsnumret från det angivna datumvärdet.

Om till exempel datumet är 28-maj-2019 kan vi använda MONTH-funktionen för att extrahera månadens nummer från det här datumet.

Hur använder man månadsfunktion i VBA?

Nedan är syntaxen för MONTH-funktionen.

Vi behöver bara ange det datum från vilket vi försöker extrahera månadens nummer.

Du kan ladda ner den här VBA-månadens Excel-mall här - VBA-månadens Excel-mall

Exempel nr 1

Vi kommer att se hur man skriver en kod för att extrahera månadens nummer från datumet. Vi tar datumet som ”10 oktober 2019 ″.

Steg 1: Starta makroförfarandet.

Koda:

 Under månad_exempel1 () Avsluta sub 

Steg 2: Definiera variabeln för att hålla datumvärdet. Eftersom vi lagrar datavärdet bör vår datatyp vara "Datum". Så deklarera variabeln och tilldela datatypen som "Datum" till den deklarerade variabeln.

Koda:

 Sub Month_Example1 () Dim DDate as Date End Sub 

Steg 3: Tilldela datumvärdet den 10 oktober 2019 för den här variabeln.

Koda:

 Sub Month_Example1 () Dim DDate as Date DDate = "10 Oct 2019" Slut Sub 

Steg 4: Tilldela nu månadsnumret för att deklarera en variabel till som "Integer".

Koda:

 Sub Month_Example1 () Dim DDate as Date Dim MonthNum As Integer DDate = "10 Oct 2019" End Sub 

Obs: Anledningen till att vi har deklarerat variabeln som heltal eftersom vårt månadsantal bara slutar vid 12. Så heltal datatyp kan innehålla detta nummer.

Steg 5: För denna variabel öppnar vi MÅNAD-funktionen.

Koda:

 Sub Month_Example1 () Dim DDate as Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Month (End Sub 

Steg 6: Månadsfunktion som frågar ”Datum” som måste anges för att extrahera månadsnumret. Eftersom vi redan har lagrat det riktade datumet till variabeln "DDate", leverera denna variabel som inmatningsparameter för månadsfunktionen.

Koda:

 Sub Month_Example1 () Dim DDate as Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Month (DDate) End Sub 

Steg 7: Nu kommer funktionen "Månad" att returnera månadsnumret från det angivna datumet till variabeln "Månadsnummer" och slutligen visa resultatet i en meddelandefält i VBA.

Koda:

 Sub Month_Example1 () Dim DDate as Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Month (DDate) MsgBox MonthNum End Sub 

Kör koden och se månadens nummer i meddelandefältet.

Produktion:

Så månadsnumret från det angivna datumet är 10, dvs. oktobermånaden.

Exempel 2

Nu tar vi cellreferenser för kodning. Nedan följer det datum vi har i kalkylbladet.

Så från cell A2-datumvärdet måste vi extrahera månadens nummer till cellen B2.

Koda:

 Sub Month_Example2 () Range ("B2"). Värde = Slut Sub 

Öppna MÅNAD-funktionen och ange datumet som RANGE A2-värde.

Koda:

 Sub Month_Example2 () Range ("B2"). Värde = Month (Range ("A2")) End Sub 

Anledningen till att vi har levererat Range A2-cell eftersom den här gången är vårt datum i cellen A2, så detsamma kommer att vara referensen.

Kör nu koden och få månadens nummer från datumet i cell B2.

Nu har vi månadsnumret i cell B2.

Exempel # 3

Vi har extraherat månaden för datumet för en cell, men tänk om vi har flera rader med data som nedan.

I dessa fall måste vi gå igenom cellerna och utföra uppgiften att extrahera månadsnumret från respektive datum.

Koden nedan kommer att göra jobbet för oss.

Koda:

 Undermånad_exempel3 () Dim k så länge för k = 2 till 12 celler (k, 3). Värde = månad (celler (k, 2). Värde) Nästa k Avsluta sub 

Vad den här koden kommer att göra är att den kommer att gå igenom raderna från 2 till 12 och extrahera månadens nummer från den andra kolumnen och lagra resultatet i den tredje kolumnen.

Saker att komma ihåg här

  • MÅNAD är en kalkylbladfunktion samt en VBA-funktion.
  • MÅNAD kräver giltig datumreferens annars får vi ett felmeddelande.
  • Om månadens nummer är 12 kommer det att ge ett felmeddelande.