Funció VBA Month | Com obtenir el número de mes a partir de la data?

Mes VBA d'Excel

Funció VBA Month és una funció incorporada que s'utilitza per obtenir el mes d'una data i la sortida que retorna aquesta funció és un nombre enter que oscil·la entre l'1 i el 12. Aquesta funció només extreu el número del mes del valor de data subministrat.

Per exemple, si la data és el 28 de maig de 2019, per extreure el número de mes d'aquesta data, podem utilitzar la funció MES.

Com s'utilitza la funció de mes a VBA?

A continuació es mostra la sintaxi de la funció MONTH.

Només hem d’indicar la data a partir de la qual intentem extreure el número de mes.

Podeu descarregar aquesta plantilla Excel VBA Month aquí: plantilla Excel VBA Month

Exemple 1

Veurem com escriure un codi per extreure el número del mes de la data. Prendrem la data com a "10 d'octubre de 2019".

Pas 1: Inicieu el procediment de macro.

Codi:

 Sub Mes_Exemple1 () Final Sub 

Pas 2: Definiu la variable per mantenir el valor de la data. Com que estem emmagatzemant el valor de les dades, el nostre tipus de dades hauria de ser "Data". Per tant, declareu la variable i assigneu el tipus de dades com a "Data" a la variable declarada.

Codi:

 Sub Mes_Exemple1 () Dim DDate Com a data de finalització Sub 

Pas 3: Per a aquesta variable, assigneu el valor de data del 10 d'octubre de 2019.

Codi:

 Sub Mes_Exemple1 () Dim DDate as Date DDate = "10 Oct 2019" End Sub 

Pas 4: Ara assigneu el número de mes per declarar una variable més com a "Enter".

Codi:

 Sub Mes_Exemple1 () Dim DDate com a Data Dim MonthNum As Integer DDate = "10 Oct 2019" End Sub 

Nota: El motiu pel qual hem declarat la variable com a enter perquè el recompte de mesos només acaba a 12. Per tant, el tipus de dades enter pot contenir aquest nombre.

Pas 5: Per a aquesta variable, obrirem la funció MES.

Codi:

 Sub Mes_Exemple1 () Dim DDate com a Data Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Mes 

Pas 6: Funció de mes que demana la "Data" que cal subministrar per extreure el número de mes. Com que ja hem emmagatzemat la data objectiu a la variable "DDate", proporcioneu aquesta variable com a paràmetre d'entrada per a la funció mes.

Codi:

 Sub Mes_Exemple1 () Dim DDate com a Data Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Mes (DDate) End Sub 

Pas 7: Ara la funció "Mes" retornarà el número de mes des de la data proporcionada a la variable "MesNum" i, finalment, mostrarà el resultat en un quadre de missatges a VBA.

Codi:

 Sub Mes_Exemple1 () Dim DDate com a Data Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Mes (DDate) MsgBox MonthNum End Sub 

Executeu el codi i consulteu el número del mes al quadre de missatges.

Sortida:

Per tant, el número de mes a partir de la data proporcionada és el 10, és a dir, el mes d’octubre.

Exemple 2

Ara agafarem referències de cel·les per codificar. A continuació es mostra la data que tenim al full de treball.

Per tant, a partir del valor de la data A2 de la cel·la, hem d’extreure el número de mes a la cel·la B2.

Codi:

 Sub Mes_Exemple2 () Interval ("B2"). Valor = Final Sub 

Obriu la funció MES i proporcioneu la data com a valor RANGE A2.

Codi:

 Sub Mes_Exemple2 () Interval ("B2"). Valor = Mes (Interval ("A2")) Final Sub 

El motiu pel qual hem subministrat una cel·la de rang A2 perquè aquesta vegada la nostra data es troba a la cel·la A2, de manera que la mateixa serà la referència.

Ara executeu el codi i obteniu el número de mes a partir de la data de la cel·la B2.

Aquí teniu el número de mes a la cel·la B2.

Exemple 3

Hem extret el mes per a la data d'una sola cel·la, però què passa si tenim diverses files de dades com la següent.

En aquests casos, hem de recórrer les cel·les i executar la tasca d’extreure el número de mes de cada data respectiva.

El següent codi ens farà la feina.

Codi:

 Sub Mes_Exemple3 () Dim k Llarg per a k = 2 a 12 cel·les (k, 3). Valor = Mes (Cel·les (k, 2). Valor) Següent Fi final Sub 

El que farà aquest codi és que circularà per les files del 2 al 12 i extreurà el número de mes de la segona columna i emmagatzemarà el resultat a la tercera columna.

Coses que cal recordar aquí

  • MONTH és una funció de full de càlcul i també una funció VBA.
  • MONTH requereix una referència vàlida de data d'una altra manera, rebrem un missatge d'error.
  • Si el número del mes és 12, llançarà un missatge d'error.