Denne opplæringen vil demonstrere hvordan du bruker Format -funksjonen.
Format Funksjon
Formater tall med forhåndsdefinerte formater
Formatfunksjonen kan konvertere et tall til en streng formatert med forhåndsdefinerte navngitte numeriske formater. De forhåndsdefinerte formatene er valuta, fast, standard, prosent, vitenskapelig, ja/nei, sann/usann og på/av.
12345678910111213141516171819202122232425262728293031 | Sub FormatExample_1 ()MsgBox Format (1234567.8) 'Resultat er: 1234567.8"Format lar bare tallet stå som det erMsgBox Format (1234567.8, "Valuta") 'Resultat er: $ 1,234,567.80'Valuta bruker systemets valutainnstillingerMsgBox Format (1234567.8, "Fixed") 'Resultat er: 1234567.80'Fast: Minst ett siffer før desimal og'bruker systeminnstillinger for desimaldelenMsgBox Format (1234567.8, "Standard") 'Resultat er: 1 234 567,80'Standard: Tusenvis separatorer og standardsystemMsgBox -format (1234567.8, "prosent") 'Resultat er: 123456780.00%'Prosent, ganges med 100 med % og standardsystem.MsgBox Format (1234567.8, "Scientific") 'Resultat er: 1.23E+06'Vitenskapelig notasjonMsgBox Format (1234567.8, "Ja/Nei") 'Resultat er: Ja'Nei hvis tallet er nullMsgBox Format (1234567.8, "True/False") 'Resultat er: True'Falske hvis tallet er lik nullMsgBox Format (1234567.8, "På/Av") 'Resultat er: På'Av hvis tallet er nullSlutt Sub |
Formater tall med brukerdefinerte formater
Formatfunksjonen kan konvertere et tall til en streng, formatert brukerdefinerte numeriske formater. 0 er en sifferplassholder som viser et siffer eller null. # er en sifferplassholder som viser et siffer eller ingenting. En prikk (.) Er desimalplassholderen, % er prosentandelen plassholder og komma (,) er tusenvis skilletegn. Tekst kan legges til i formatet ved hjelp av doble anførselstegn (“”), og et enkelt tegn kan legges til hvis det brukes etter en skråstrek (\).
1234567891011 | Delformateksempel_2 ()MsgBox Format (7,8, "000,00") 'Resultat er: 007,80MsgBox Format (12347.8356, "000.00") 'Resultat er: 12347.84MsgBox Format (7.8, "###. ##") 'Resultat er: 7.8MsgBox Format (12347.8356, "###. ##") 'Resultat er: 12347.84MsgBox Format (7,8, "\ $. 00") 'Resultat er: $ 7,80MsgBox Format (1237.835, "ABA0.00") 'Resultat er: ABA1237.84MsgBox Format (12347.8356, "000.00%") 'Resultat er: 1234783.56%MsgBox -format (12347.8356, " %000.00") 'Resultat er: %12347.84Slutt Sub |
Formater tall avhengig av verdiene
Formatfunksjonen kan ha forskjellige seksjoner ved hjelp av forskjellige formatregler for positive tall, negative tall, null og Null. Disse seksjonene er atskilt med et semikolon.
1234567 | Underformat Eksempel_3 ()MsgBox Format (7,8, "000,00; (000,00); \ z \ e \ r \ o; ingenting") 'Resultat er: 007,80MsgBox Format (-7.8, "000.00; (000.00); \ z \ e \ r \ o; ingenting") 'Resultat er: (007.80)MsgBox Format (0, "000.00; (000.00); \ z \ e \ r \ o; ingenting") 'Resultat er: nullMsgBox Format (Null, "000.00; (000.00); \ z \ e \ r \ o; ingenting") 'Resultat er: ingentingSlutt Sub |
Formatere datoer med forhåndsdefinerte formater
Formatfunksjonen kan formatere datoer med forskjellige forhåndsdefinerte formater. Disse formatene er lang, middels og kort dato og også lang, middels og kort tid.
1234567891011121314 | Underformat Eksempel_4 ()Dim DateEx As DateDateEx = #4/18/2020 19:35:56 PM #MsgBox Format (DateEx, "General Date") 'Resultat er: 18.04.2020 19:35:56MsgBox Format (DateEx, "Long Date") 'Resultat er: lørdag 18. april 2022MsgBox Format (DateEx, "Medium Date") 'Resultat er: 18-Apr-20MsgBox Format (DateEx, "Short Date") 'Resultat er: 18.04.2020MsgBox -format (DateEx, "Long Time") 'Resultat er: 19:35:56MsgBox Format (DateEx, "Medium Time") 'Resultat er: 19:35MsgBox Format (DateEx, "Short Time") 'Resultat er: 19:35Slutt Sub |
Formatdatoer med brukerdefinerte formater
Formatfunksjonen kan formatere datoer med brukerdefinerte formater. Tegn som d, m, y, w, q kan brukes til å lage egendefinerte datoformater.
123456789101112131415161718192021222324 | Sub FormatExample_5 ()Dim DateEx As DateDateEx = #4/18/2020 19:35:56 PM #MsgBox -format (DateEx, "m/d/åå") 'Resultat er: 18.04.2020MsgBox-format (DateEx, "mm-dd-åå") 'Resultat er: 04-18-2020MsgBox-format (DateEx, "mmm-dd-åå") 'Resultat er: 18.04.2020MsgBox Format (DateEx, "mmmm-dd-yy") 'Resultat er: 18.04.2020MsgBox-format (DateEx, "mm-ddd-åå") 'Resultat er: 04-lør-2020MsgBox-format (DateEx, "mm-dddd-åå") 'Resultat er: 04-lørdag-2020MsgBox -format (DateEx, "y")'Resultatet er: 109'antall dager i år 1-366MsgBox -format (DateEx, "ww")'Resultatet er: 16antall uker i år 1-52MsgBox -format (DateEx, "q")'Resultatet er: 2kvartal i år 1-4Slutt Sub |
Tegn som h, n, s og am, pm kombinasjoner kan brukes til å lage egendefinerte tidsformater.
123456789101112 | Sub FormatExample_6 ()Dim DateEx As DateDateEx = #4/18/2020 19:06:05 PM #MsgBox Format (DateEx, "h: n: s") 'Resultat er: 19: 6: 5MsgBox Format (DateEx, "hh: nn: ss") 'Resultat er: 19:06:05MsgBox -format (DateEx, "hh: nn: ss am/pm") 'Resultat er: 07:06:05 pmMsgBox Format (DateEx, "hh: nn: ss AM/PM") 'Resultat er: 07:06:05 PMMsgBox Format (DateEx, "hh: nn: ss a/p") 'Resultat er: 07:06:05 pMsgBox -format (DateEx, "hh: nn: ss A/P") 'Resultat er: 07:06:05 PSlutt Sub |
Format for bedre lesbarhet
Formatfunksjonen kan formatere strenger eller tall for bedre lesbarhet. @ er en tegnplassholder som brukes til å vise et tegn eller mellomrom. & er en tegnplassholder som brukes til å vise et tegn eller ingenting. ! kan brukes til å bruke tegnplassholdere fra venstre til høyre og kan brukes til å håndheve små eller store bokstaver. Kan være nyttig i formatering av telefonnumre eller andre store tall uten å endre den opprinnelige verdien.
12345678910111213141516171819202122 | Underformat Eksempel_7 ()Dim StrEx som strengStrEx = "ABCdef"MsgBox Format (StrEx, "-@@@-@@-@@") 'Resultat er:-AB-Cd-efMsgBox Format (StrEx, "-&&&-&&-&&") 'Resultat er: -AB-Cd-ef'Starter fra høyre til venstre.MsgBox Format (StrEx, "-@@@-@@-@@-@@") 'Resultat er:--AB-Cd-efMsgBox Format (StrEx, "-&&&-&&-&&-&&") 'Resultat er: --AB-Cd-ef'Starter fra høyre til venstre. Når du er tom for tegn, legger @ til mellomrom og & legger til ingentingMsgBox Format (StrEx, "!-@@@-@@-@@-@@") 'Resultat er: -ABC-de-f-MsgBox Format (StrEx, "!-&&&-&&-&&-&&") 'Resultat er: -ABC-de-f'Starter fra venstre til høyre på grunn av!MsgBox Format (StrEx, ">") 'Resultat er: ABCDEFMsgBox Format (StrEx, "<") 'Resultat er: abcdefMsgBox Format (1234567890, "@@@-@@@-@@@@") 'Resultat er: 123-456-7890MsgBox Format (1234567890, "@@@@-@@@-@@@") 'Resultat er: 1234-567-890Slutt Sub |
Formater mønstre i regnearkceller
Formatfunksjonen kan brukes i VBA -kode og også i regnearkceller. Velg cellen eller celleområdet, og følg menyposten Format Cells> Custom. Det er mange brukerdefinerte formater, og også brukeren kan lage sine egne tilpassede formater.
Formater mønstre med tekstformel
Formatfunksjonen kan direkte endre formatet til en verdi inne i VBA -koden. Vi kan også bruke excel -tekstformel for å få det samme resultatet ved å bruke WorksheetFunction.Text.
1234567891011 | Sub FormatExample_8 ()MsgBox -format (7,8, "000,00")'Resultatet er: 007,80MsgBox WorksheetFunction.Text (7,8, "000,00")'Resultatet er: 007,80MsgBox -format (7.8, "###. ##")'Resultatet er: 7.8MsgBox WorksheetFunction.Text (7.8, "###. ##")'Resultatet er: 7.8Slutt Sub |