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-mallExempel 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 SubObs: 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.