VBA-format

Excel VBA-formatfunktion

Formateringsfunktionen i VBA används för att formatera givna värden i önskat format, den här funktionen kan användas för att formatera datum eller siffror eller alla trigonometriska värden, den här funktionen har i grunden två obligatoriska argument, en är ingången som tas i form av en sträng och det andra argumentet är den typ av format vi vill använda, till exempel om vi använder Format (.99, ”Procent”), detta ger oss resultatet som 99%.

I VBA måste vi använda funktionen "FORMAT" för att applicera på celler. Excel-formatering är ett av de viktiga begreppen att behärska. De vanliga formateringsteknikerna som vi alla använder i vårt dagliga arbete är ”datumformat, tidsformat, nummerformatering och andra viktiga formateringskoder”. I det vanliga Excel-kalkylbladet trycker vi bara på alternativet för excelcellformat och utför formateringsplikten genom att använda lämplig formateringskod. Men i VBA är det inte så rakt fram som vår kalkylteknik.

Syntax

  • Uttryck: Detta är inget annat än det värde vi vill formatera. I VAB-teknik kallas det för uttryck.
  • [Format]: Vilket är det format du vill använda på det uttryck du har valt? Vi har två typer av formatering här, en är det användardefinierade formatet och den andra är det inbyggda formatet.

    Här har vi VBA-datumformat, nummerformat och textformat.

    VBA-datumformat har ett kort datum, långt datum, mediumdatum och allmänt datum.

    Nummerformat har valuta, standard, procent, vetenskaplig, ja eller nej, sant eller falskt och på eller av

  • [Veckans första dag]: Vad är den första dagen i veckan? Vi kan välja vilken dag som helst i listan. Nedan finns en lista med dagar och lämpliga koder.

  • [Årets första vecka]: Vad är årets första vecka? Detta anger veckan som ska användas som årets första vecka.

Hur man använder?

Du kan ladda ner VBA-formatmallen här - VBA-formatmall

Okej, låt oss använda den här funktionen praktiskt för att förstå funktionaliteten i FORMAT-funktionen. Antag att du har numret 8072.56489 och att du vill använda nummerformatering på det. Följ stegen nedan för att tillämpa nummerformatering på den.

Steg 1: Starta ett Excel-makro och definiera variabeln som en " sträng " -datatyp.

Koda:

 Underarbetsblad_Funktion_Exempel1 () Dim K som strängändsub 

Steg 2: Tilldela ett värde till k som vårt nummer dvs. 8072.56489

Koda:

 Underarbetsblad_Funktion_Exempel1 () Dim K som sträng K = 8072.56489 Slut sub 

Steg 3: Visa “ k ” -värdet i VBA-meddelanderutan.

Koda:

 Underarbetsblad_Funktion_Exempel1 () Dim K som sträng K = 8072.56489 MsgBox K End Sub 

Steg 4: Om du kör det här makrot kommer vi under resultatet.

Resultatet är som det är vi tilldelade värdet till variabeln “k”. Men vi måste använda lite formatering på detta nummer för att göra det vackert.

Steg 5: I stället för att direkt tilldela ett värde till “ k ”, låt oss använda FORMAT-funktionen.

Koda:

 Under Arbetsblad_Funktion_Exempel1 () Dim K Som Sträng K = Format (MsgBox K Slut Sub 

Steg 6: Tilldela nu numret 8072.56489 för uttryck .

Koda:

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

Steg 7: I formateringsalternativet kan vi antingen använda inbyggt format eller så kan vi använda vår egen formateringskod. Nu ska jag använda en inbyggd formateringsstil som " Standard ".

Koda:

 Underarbetsblad_Funktion_Exempel1 () Dim K som sträng K = Format (8072.56489, "Standard") MsgBox K End Sub 

Steg 8: Kör nu den här koden och se resultatet av meddelandefältet.

Okej, vi har kommatecken (,) eftersom tusen avgränsare och decimal endast avrundas till två siffror.

Så här kan vi använda många andra inbyggda formateringsstilar för att tillämpa formateringen. Nedan följer några av de koder jag har tillämpat.

# 1 - Valutaformat

Koda:

 Underarbetsblad_Funktion_Exempel2 () Dim K som sträng K = Format (8072.56489, "Valuta") MsgBox K End Sub 

Resultat:

# 2 - Fast format

Koda:

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

Resultat:

# 3 - Procentformat

Koda:

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

Resultat:

# 4 - Användardefinierade format

Ok, nu kommer vi att se några av de användardefinierade formaten.

Koda:

 Underarbetsblad_Funktion_Exempel5 () Dim K som sträng K = Format (8072.56489, "#. ##") MsgBox K End Sub 

Resultat:

Koda:

 Underarbetsblad_Funktion_Exempel5 () Dim K som sträng K = Format (8072.56489, "#, ##. ##") MsgBox K End Sub 

Resultat:

# 5 - Datum FORMAT

Vi har sett några av de viktiga antalet formateringstekniker. Nu måste vi använda FORMAT-funktionen för att formatera datum i VBA.

Jag har skrivit kod för att visa datumets resultat genom variabeln.

Koda:

 Underarbetsblad_Funktion_Exempel6 () Dim K som sträng K = 13-3-2019 MsgBox K End Sub 

När jag kör den här koden skulle jag inte få ett exakt datum utan resultatet är patetiskt.

För att få exakta datum måste vi tilldela datumformatet till det. Det första vi måste göra är att ange datumet i dubbla citat och tillämpa datumformatet.

Koda:

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

Om du kör den här koden nu får jag ett ordentligt långt datum.

"Long Date" är ett inbyggt format, på samma sätt kan du använda alternativet "short date" och "medium date".

Saker att komma ihåg

  • Värdet som returneras av FORMAT-funktionen är strängen.
  • Vi kan också använda våra egna koder för datum, tid och nummerformatering, som vi använder i kalkylformatering.
  • FORMAT är en VBA-funktion och endast tillgänglig i VBA inte i kalkylbladet.