VBA-indeling

Excel VBA-opmaakfunctie

De opmaakfunctie in VBA wordt gebruikt om de gegeven waarden in het gewenste formaat op te maken, deze functie kan worden gebruikt voor het opmaken van datums of getallen of trigonometrische waarden, deze functie heeft in feite twee verplichte argumenten, een is de invoer die wordt genomen in de vorm van een string en het tweede argument is het type formaat dat we willen gebruiken, bijvoorbeeld als we formaat (.99, "Percent") gebruiken, dit geeft ons het resultaat als 99%.

In VBA moeten we de functie genaamd "FORMAT" gebruiken om het formaat op cellen toe te passen. Excel-opmaak is een van de belangrijkste concepten om onder de knie te krijgen. De algemene opmaaktechnieken die we allemaal gebruiken in ons dagelijkse werk zijn "datumnotatie, tijdnotatie, getalnotatie en andere belangrijke opmaakcodes". In een normaal Excel-werkblad klikken we gewoon op de Excel-celoptie en voeren de opmaakopdracht uit door de juiste opmaakcode toe te passen. In VBA is dit echter niet zo eenvoudig als onze werkbladtechniek.

Syntaxis

  • Expressie: dit is niets anders dan de waarde die we willen opmaken. In VAB-techniek wordt het Expression genoemd.
  • [Formaat]: Wat is het formaat dat u wilt toepassen op de uitdrukking die u heeft geselecteerd? We hebben hier twee soorten opmaak, een is het door de gebruiker gedefinieerde formaat en de tweede is het ingebouwde formaat.

    Hier hebben we VBA-datumnotaties, nummerformaten en tekstformaten.

    VBA-datumnotaties hebben een korte datum, lange datum, gemiddelde datum en algemene datum.

    Getalnotaties hebben Valuta, Standaard, Percentage, Wetenschappelijk, Ja of Nee, Waar of niet waar en Aan of Uit

  • [Eerste dag van de week]: Wat is de eerste dag van uw week? We kunnen elke dag uit de lijst selecteren. Hieronder vindt u de lijst met dagen en de juiste codes.

  • [Eerste week van het jaar]: Wat is de eerste week van het jaar? Dit specificeert de week die moet worden gebruikt als de allereerste week van het jaar.

Hoe te gebruiken?

U kunt deze VBA-indelingssjabloon hier downloaden - VBA-indelingssjabloon

Oké, laten we deze functie praktisch toepassen om de functionaliteit van de FORMAT-functie te begrijpen. Stel dat je het nummer 8072.56489 hebt en je wilt er nummeropmaak op toepassen. Volg de onderstaande stappen om er nummeropmaak op toe te passen.

Stap 1: Start een Excel-macro en definieer de variabele als een " string " -gegevenstype.

Code:

 Sub Worksheet_Function_Example1 () Dim K As String End Sub 

Stap 2: Wijs een waarde toe aan k als ons nummer, bijvoorbeeld 8072.56489

Code:

 Sub Worksheet_Function_Example1 () Dim K As String K = 8072.56489 End Sub 

Stap 3: toon de " k " -waarde in het VBA-berichtvenster.

Code:

 Sub Worksheet_Function_Example1 () Dim K As String K = 8072.56489 MsgBox K End Sub 

Stap 4: Als u deze macro uitvoert, krijgen we onderstaand resultaat.

Het resultaat is zoals het is dat we de waarde hebben toegewezen aan variabele “k”. Maar we moeten wat opmaak toepassen op dit nummer om het mooi te maken.

Stap 5: In plaats van direct een waarde aan “ k ” toe te wijzen , gebruiken we de FORMAT-functie.

Code:

 Sub Worksheet_Function_Example1 () Dim K As String K = Formaat (MsgBox K End Sub 

Stap 6: Wijs nu voor Expression het nummer 8072.56489 toe .

Code:

 Sub Worksheet_Function_Example1 () Dim K As String K = Formaat (8072.56489, MsgBox K End Sub 

Stap 7: In de opmaakoptie kunnen we ofwel het ingebouwde formaat gebruiken of we kunnen onze eigen opmaakcode gebruiken. Nu zal ik een ingebouwde opmaakstijl gebruiken als " Standaard ".

Code:

 Sub Worksheet_Function_Example1 () Dim K As String K = Format (8072.56489, "Standard") MsgBox K End Sub 

Stap 8: Voer nu deze code uit en bekijk het resultaat van het berichtvenster.

Oké, we hebben komma (,) als scheidingstekens voor duizendtallen en decimalen worden alleen naar boven afgerond tot twee cijfers.

Op deze manier kunnen we vele andere ingebouwde opmaakstijlen gebruiken om de opmaak toe te passen. Hieronder staan ​​enkele van de codes die ik heb toegepast.

# 1 - Valuta-indeling

Code:

 Sub Worksheet_Function_Example2 () Dim K As String K = Format (8072.56489, "Currency") MsgBox K End Sub 

Resultaat:

# 2 - Vast formaat

Code:

 Sub Worksheet_Function_Example3 () Dim K As String K = Formaat (8072.56489, "Fixed") MsgBox K End Sub 

Resultaat:

# 3 - Percentage formaat

Code:

 Sub Worksheet_Function_Example4 () Dim K As String K = Format (8072.56489, "Percent") MsgBox K End Sub 

Resultaat:

# 4 - Door de gebruiker gedefinieerde formaten

Oké, nu zullen we enkele door de gebruiker gedefinieerde formaten zien.

Code:

 Sub Worksheet_Function_Example5 () Dim K As String K = Format (8072.56489, "#. ##") MsgBox K End Sub 

Resultaat:

Code:

 Sub Worksheet_Function_Example5 () Dim K As String K = Formaat (8072.56489, "#, ##. ##") MsgBox K End Sub 

Resultaat:

# 5 - Datum FORMAT

We hebben enkele van de belangrijkste aantallen opmaaktechnieken gezien. Nu zullen we de FORMAT-functie moeten gebruiken om de datum in VBA op te maken.

Ik heb code geschreven om het resultaat van de datum door de variabele te laten zien.

Code:

 Sub Worksheet_Function_Example6 () Dim K As String K = 13 - 3 - 2019 MsgBox K End Sub 

Wanneer ik deze code uitvoer, zou ik geen nauwkeurige datum krijgen, maar het resultaat is zielig.

Om de juiste datums te krijgen, moeten we de datumnotatie eraan toewijzen. Het eerste dat we moeten doen, is de datum tussen dubbele aanhalingstekens opgeven en de datumnotatie toepassen.

Code:

 Sub Worksheet_Function_Example6 () Dim K As String K = Format ("10 - 3 - 2019", "Long Date") MsgBox K End Sub 

Als u deze code nu uitvoert, krijg ik een goede lange datum.

"Lange datum" is een ingebouwd formaat, op dezelfde manier kunt u de opties "korte datum" en "gemiddelde datum" gebruiken.

Dingen om te onthouden

  • De waarde die wordt geretourneerd door de functie FORMAT is de tekenreeks.
  • We kunnen ook onze eigen datum-, tijd- en cijferopmaakcodes gebruiken, zoals we die gebruiken bij het opmaken van werkbladen.
  • FORMAT is een VBA-functie en alleen beschikbaar in VBA, niet in het werkblad.