VBA -formatfunksjon

Innholdsfortegnelse

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

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave