Come utilizzare eomonth in vba (con esempio)
È possibile utilizzare il metodo EoMonth in VBA per restituire l’ultimo giorno del mese per una determinata data.
Ecco un modo comune per utilizzare questo metodo nella pratica:
Sub LastDayOfMonth()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = Application.WorksheetFunction.EoMonth(Range(" A " & i), 0)
Range(" C " & i).NumberFormat = " m/d/yyyy "
Next i
End Sub
Questa particolare macro trova l’ultimo giorno del mese per ciascuna data nell’intervallo A2:A11 e visualizza tale data nella cella corrispondente nell’intervallo C2:C11 .
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: come utilizzare EoMonth in VBA
Supponiamo di avere il seguente set di dati in Excel che contiene informazioni sulle vendite effettuate da un’azienda in date diverse:
Supponiamo di voler trovare l’ultimo giorno del mese per ciascuna data nella colonna A e visualizzarlo nella colonna C.
Per fare ciò possiamo creare la seguente macro:
Sub LastDayOfMonth()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = Application.WorksheetFunction.EoMonth(Range(" A " & i), 0)
Range(" C " & i).NumberFormat = " m/d/yyyy "
Next i
End Sub
Quando eseguiamo questa macro, riceviamo il seguente output:
Tieni presente che la colonna C contiene l’ultimo giorno del mese per ciascuna data corrispondente nella colonna A.
Tieni presente che abbiamo utilizzato la proprietà NumberFormat per visualizzare i valori della data in un formato data riconoscibile nella colonna C anziché nei numeri seriali, che è il formato predefinito in Excel.
Si noti inoltre che l’ultimo argomento del metodo EoMonth specifica il numero di mesi avanti o indietro da utilizzare nel calcolo dell’ultimo giorno del mese.
In questo esempio abbiamo utilizzato il valore 0 per specificare che vogliamo trovare l’ultimo giorno del mese corrente.
Tuttavia, potremmo invece utilizzare il valore -1 per specificare che vogliamo trovare l’ultimo giorno del mese precedente o il valore 1 per specificare che vogliamo trovare l’ultimo giorno del mese successivo.
Nota : puoi trovare la documentazione completa del metodo EoMonth in VBA qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:
Come confrontare le date in VBA
Come convertire la stringa fino ad oggi in VBA
Come calcolare i giorni tra due date in VBA