Hur man formaterar nummer med VBA i Excel (3 metoder)

  • Dela Detta
Hugh West

Genomförande av VBA-makro är den mest effektiva, snabbaste och säkraste metoden för att utföra alla operationer i Excel. I den här artikeln kommer vi att visa dig hur du kan formatera numret i Excel med hjälp av VBA .

Ladda ner arbetsboken

Du kan ladda ner den kostnadsfria Excel-arbetsboken för övningar här.

Formatera nummer med VBA.xlsm

3 metoder för att formatera nummer i Excel med VBA

Titta på följande exempel: Vi har lagrat samma siffror i båda Kolumn B och C så att när vi formaterar numret i Kolumn C , du kommer att känna till det från B-kolonn i vilket format numret var tidigare.

1. VBA för att formatera nummer från en typ till en annan i Excel

Först ska vi veta hur man formatera numret 12345 från Cell C5 i vårt givna dataset med VBA till Valuta format.

Steg:

  • Tryck på Alt + F11 på tangentbordet eller gå till fliken Utvecklare -> Visual Basic för att öppna Redigerare för Visual Basic .

  • I popup-kodfönstret klickar du i menyraden på Infoga -> Modul .

  • Kopiera följande kod och klistra in den i kodfönstret.
 Sub NumberFormat() Range("C5").NumberFormat = "#,###0.0" 'Detta kommer att formatera numret 12345 till en valuta End Sub 

Din kod är nu redo att köras.

  • Tryck på F5 på tangentbordet eller välj i menyraden Kör -> Kör Sub/UserForm Du kan också bara klicka på liten Play-ikon i undermenyfältet för att köra makrot.

Denna kod kommer att formatera numret 12345 till en valuta med ett decimalvärde.

Om du vill visa valutasymbolen i cellen är det bara att sätta symbolen före koden.

 Sub NumberFormat() Range("C6").NumberFormat = "$#,##0.0" 'Detta kommer att formatera numret 12345 till valuta med symbolen $ End Sub 

I vårt fall använde vi dollar ($) Du kan använda vilken valutasymbol som helst.

Den här koden formaterar talet till valuta med en dollar ($) symbol.

Du kan också konvertera det här formatet till många andra format. Följ bara koden nedan för att omvandla numret till det format du behöver.

 Sub NumberFormat() 'Originalnummer 12345 Range("C5").NumberFormat = "#,##0.0" 'Detta kommer att formatera numret till en valuta Range("C6").NumberFormat = "$#,##0.0" 'Detta kommer att formatera numret till en valuta med $-symbol Range("C7").NumberFormat = "0.00%" 'Detta kommer att formatera numret till ett procentuellt värde Range("C8").NumberFormat = "#,##.00;[röd]-#,##.00" 'Dettakommer att formatera talet i röd färg (villkorlig formatering) Range("C9").NumberFormat = "#?/?" 'Detta kommer att formatera talet i bråkdelar Range("C10").NumberFormat = "0#"" Kg"""' 'Detta kommer att formatera talet med text Range("C11").NumberFormat = "#-#-##-#-#-#-#" 'Detta kommer att formatera talet med separatorer Range("C12").NumberFormat = "#,###0.00" 'Detta kommer att formatera taletantal med kommatecken och decimaler om tillämpligt Range("C13").NumberFormat = "#,##0" 'Detta kommer att formatera antalet till tusental med kommatecken om tillämpligt Range("C14").NumberFormat = "#,###0.00" 'Detta kommer att formatera antalet till miljoner Range("C15").NumberFormat = "dd-mmm-yyyy hh:mm AM/PM" 'Detta kommer att formatera antalet till datum & tid End Sub 

VBA-makro

Översikt

Läs mer: Excel anpassade nummerformat för flera villkor

2. Makro för att formatera ett antal siffror i Excel

Vi har sett hur man ändrar sifferformatet för en enskild cell. Men om du vill ändra ändra formatet för ett antal siffror VBA koderna är i stort sett desamma som i avsnittet ovan. Den här gången måste du i stället för att skicka ett enda cellreferensnummer inom parentesen i Range-objektet passera hela sortimentet (som här C5:C8) inom parenteserna.

 Sub NumberFormatRng() Range("C5:C8").NumberFormat = "$#,##0.0" End Sub 

Den här koden formaterar ett visst antal siffror från ditt dataset i Excel.

Läs mer: Hur du formaterar tal till miljoner i Excel (6 sätt)

Liknande läsningar:

  • Excel avrunda till 2 decimaler (med miniräknare)
  • Hur man gör Sätt parenteser för negativa tal i Excel
  • Hur du formaterar ett tal i tusen K och miljoner M i Excel (4 sätt)
  • Anpassat nummerformat: Miljoner med en decimal i Excel (6 sätt)
  • Hur du ändrar nummerformatet från kommatecken till punkt i Excel (5 sätt)

3. Inbädda VBA för att konvertera nummer med formatfunktionen i Excel

Du kan också använda Formatfunktion i Excel VBA för att omvandla siffrorna. Makrot för att göra detta är,

Steg:

  • På samma sätt som tidigare, öppna Redigerare för Visual Basic från Utvecklare och Infoga a Modul i kodfönstret.
  • I kodfönstret kopierar du följande kod och klistrar in den.
 Sub NumberFormatFunc() MsgBox Format(12345, "#,###0.00") End Sub 

Din kod är nu redo att köras.

Du får det formaterade numret i meddelanderutan.

Relaterat innehåll: Hur man konverterar tal till procent i Excel (3 snabba sätt)

Slutsats

I den här artikeln fick du veta hur du kan formatera numret i Excel med VBA Jag hoppas att den här artikeln har varit till stor nytta för dig. Du får gärna fråga om du har några frågor om ämnet.

Hugh West är en mycket erfaren Excel-tränare och analytiker med över 10 års erfarenhet i branschen. Han har en kandidatexamen i redovisning och ekonomi och en magisterexamen i företagsekonomi. Hugh har en passion för undervisning och har utvecklat ett unikt undervisningssätt som är lätt att följa och förstå. Hans expertkunskap om Excel har hjälpt tusentals studenter och yrkesverksamma över hela världen att förbättra sina färdigheter och utmärka sig i sina karriärer. Genom sin blogg delar Hugh med sig av sin kunskap med världen, och erbjuder gratis Excel-handledning och onlineutbildning för att hjälpa individer och företag att nå sin fulla potential.