Vba: hoe maand en jaar vanaf datum te krijgen
U kunt de eigenschap NumberFormat in VBA gebruiken om de maand en het jaar uit een datum te halen.
Hier volgt een gebruikelijke manier om deze eigenschap in de praktijk te gebruiken:
SubGetMonthYear ()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = DateValue(Range(" A " & i))
Range(" C " & i).NumberFormat = " mm/yyyy "
Next i
End Sub
Deze specifieke macro zoekt de maand en het jaar voor elke datum in het bereik A2:A11 en geeft deze waarden weer in de overeenkomstige cellen in het bereik C2:C11 .
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: Voeg dagen toe aan deze dag in VBA
Stel dat we de volgende gegevensset in Excel hebben die informatie bevat over de verkopen van een bedrijf op verschillende data:
Stel dat we voor elke cel in de datumkolom de maand en het jaar willen weten.
We kunnen hiervoor de volgende macro maken:
SubGetMonthYear ()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = DateValue(Range(" A " & i))
Range(" C " & i).NumberFormat = " mm/yyyy "
Next i
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Merk op dat kolom C de maand en het jaar bevat van elke overeenkomstige datum in kolom A.
Houd er rekening mee dat we de eigenschap NumberFormat hebben gebruikt om datums op te maken met twee cijfers voor maanden en vier cijfers voor jaren.
We zouden ervoor kunnen kiezen om deze waarden in een ander formaat weer te geven als we dat wilden.
We kunnen bijvoorbeeld de volgende syntaxis gebruiken om de maand met één cijfer weer te geven (als de maand slechts één cijfer bevat) en het jaar met twee cijfers:
SubGetMonthYear ()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = DateValue(Range(" A " & i))
Range(" C " & i).NumberFormat = " m/yy "
Next i
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Speel gerust met de verschillende opmaakopties om de maand- en jaarwaarden naar wens weer te geven.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:
Datums vergelijken in VBA
Hoe string naar datum te converteren in VBA
Hoe dagen tussen twee datums in VBA te berekenen