Funktio palauttaa lausekkeen muotoiltuna.
Format(lauseke[, muotoilumerkkijono[, viikonensimmäinenpäivä[, vuodenensimmäinenviikko]]])
Lauseke on muotoiltava merkkijono, luku tai päivämäärä. Muotoilumerkkijono määrittää lausekkeen muotoilutavan.
Muotoilumerkkijonossa olevat välilyönnit sekä merkit +, - ja $ säilyvät ennallaan. Lisäksi kaikki merkit, joita ennen on \, näytetään sellaisenaan. Toinen tapa säilyttää merkki on ympäröidä se lainausmerkeillä.
Jos lauseke on merkkijono, muotoilumerkkijono voi sisältää seuraavia merkkejä:
merkki | vaikutus |
@ | Esittää merkkijonon merkkiä. Merkkien paikat täytetään oikealta vasemmalle. Jos merkkijono loppuu kesken, merkin paikalle tulee tyhjä. |
& | Sama kuin @, paitsi että merkin paikalle ei tule mitään, jos merkkijono loppuu kesken. |
! | @:t ja &:t täytetään vasemmalta oikealle. |
> | Muuttaa kaikki merkit suuriksi. |
< | Muuttaa kaikki merkit pieniksi. |
Jos lauseke on luku, muotoilumerkkijono voi sisältää seuraavia merkkejä:
merkki | vaikutus |
0 | Merkki vastaa yhtä numeroa luvussa. Jos merkkejä on enemmän kuin numeroita, luvun alkuun tai loppuun tulee ylimääräisiä nollia. Jos numeroita on enemmän, desimaalipilkun vasemmanpuoleinen osa pysyy ennallaan ja oikeanpuoleiset numerot pyöristyvät merkkien määrän mukaan. |
# | Sama kuin 0, paitsi että ylimääräisiä nollia ei tule, jos merkkejä on luvun pituutta enemmän. |
. | Määrittää desimaalipilkun paikan. |
, | Jos merkki on luvun keskellä, luvun numerot jaetaan kolmen ryhmiin luettavuuden parantamiseksi. Jos merkki on luvun lopussa, luku jaetaan 1000:lla. |
% | Luku kerrotaan 100:lla ja sen perään tulee prosenttimerkki. |
e-, e+, E-, E+ | Luku esitetään kymmenen potenssina. |
/ | Päivämäärän osat (päivät, kuukaudet ja vuodet) erotetaan kauttaviivalla. |
: | Kellonajan osat (tunnit, minuutit ja sekunnit) erotetaan kaksoispisteellä.[/td]! |
Jos lauseke on päivämäärä, muotoilumerkkijono voi sisältää seuraavia merkkejä:
merkki | vaikutus |
c | täydellinen päivämäärä ja kellonaika |
d | kuukauden päivä yksi- tai kaksinumeroisena (1 - 31) |
dd | kuukauden päivä kaksinumeroisena (01 - 31) |
ddd | viikonpäivän nimen lyhenne (ma - su) |
dddd | viikonpäivän nimi (maanantai - sunnuntai) |
ddddd | päivämäärän lyhyt muoto |
dddddd | päivämäärän pitkä muoto |
h | tunti yksi- tai kaksinumeroisena (0 - 23) |
hh | tunti kaksinumeroisena (00 - 23) |
m | kuukausi yksi- tai kaksinumeroisena (1 - 12) |
mm | kuukausi kaksinumeroisena (01 - 12) |
mmm | kuukauden nimen lyhenne (tammi - joulu) |
mmmm | kuukauden nimi (tammikuu - joulukuu) |
n | minuutit yksi- tai kaksinumeroisena (0 - 59) |
nn | minuutit kaksinumeroisena (00 - 59) |
q | vuosineljännes (1 - 4) |
s | sekunnit yksi- tai kaksinumeroisena (0 - 59) |
ss | sekunnit kaksinumeroisena (00 - 59) |
ttttt | täydellinen kellonaika |
w | viikonpäivän numero (1 - 7) |
ww | viikon numero (1 - 53) |
y | vuodenpäivä (1 - 366) |
yy | vuosi kaksinumeroisena (03) |
yyyy | vuosi nelinumeroisena (2003) |
Päivämäärien esityksessä käytettävä viikon ensimmäinen päivä on joku seuraavista:
arvo | vakio | kuvaus |
0 | vbUseSystem | järjestelmän asetusten mukainen |
1 | vbSunday | sunnuntai (oletus) |
2 | vbMonday | maanantai |
3 | vbTuesday | tiistai |
4 | vbWednesday | keskiviikko |
5 | vbThursday | torstai |
6 | vbFriday | perjantai |
7 | vbSaturday | lauantai |
Myös päivämääriin liittyvä vuoden ensimmäinen viikko on joku seuraavista:
arvo | vakio | kuvaus |
0 | vbUseSystem | järjestelmän asetusten mukainen |
1 | vbFirstJan1 | viikko, jona on tammikuun ensimmäinen päivä (oletus) |
2 | vbFirstFourDays | viikko, jossa on vähintään neljä uuteen vuoteen kuuluvaa päivää |
3 | vbFirstFullWeek | vuoden ensimmäinen kokonainen viikko |
Esimerkki:
'merkkijonojen muotoilua Debug.Print Format("abcdefg", "&&-&&-&&-&&") 'a-bc-de-fg Debug.Print Format("abcdefg", "!&&-&&-&&-&&") 'ab-cd-ef-g Debug.Print Format("abcdefg", ">") 'ABCDEFG 'lukujen muotoilua Debug.Print Format(15, "000") '015 Debug.Print Format(15, "###") '15 Debug.Print Format(5.94573, "0.00 \m\a\r\k\k\a\a") '5,95 markkaa Debug.Print Format(1234567890, "#,#") '1 234 567 890 Debug.Print Format(1234567890, "#.##E+") '1,23E+9 'päivämäärien muotoilua Dim testi As Date testi = "9.4.2003 22:25" Debug.Print Format(testi, "hh:nn:ss") '22:25:00 Debug.Print Format(testi, "c") '9.4.2003 22:25:00 Debug.Print Format(testi, "mmmm\n d\. yyyy") 'huhtikuun 9. 2003 Debug.Print Format(testi, "w") '4 Debug.Print Format(testi, "w", vbMonday) '3