Muszę przyznać, że funkcja Format należy do tych, których nie doceniam. No, może bez przesady, po prostu nie miałem okazji zbyt często sięgać po nią mając na podorędziu zestaw funkcji VBA oraz inne umiejętności programistyczne. Wobec jednak faktu, że funkcja oferuje wiele korzyści związanych z formatowaniem zwracanych wartości poświęcę jej niniejszy wpis skupiając się na wybranych i najbardziej praktycznych przypadkach.
1. Formatowanie daty to najczęstsze skojarzenie z funkcją format. Zobaczmy kilka możliwych konstrukcji i zwracane z ich wykorzystaniem wartości:
06 | Debug.Print "dzień tygodnia: " & Format(Teraz, "dddd" ) |
08 | Debug.Print "dzień miesiąca: " & Format(Teraz, "mmmm" ) |
10 | Debug.Print "długa data: " & Format(Teraz, "dddddd" ) |
11 | Debug.Print "długa data: " & Format(varMix, "Long date" ) |
a ponadto cały zestaw dat krótki, fragmentów godziny, itp. Wszystko oczywiście ukryte w parametrach funkcji odpowiednio umieszczonych w cudzysłowach.
2. Formatowanie liczb. Tu oczywiście do dyspozycji mamy cały zestaw możliwości. Sięgnijmy więc po przykład dla liczby Pi.
03 | Dim liczbaPI As Double |
04 | liczbaPI = WorksheetFunction.Pi() |
06 | Debug.Print "format rozszerzony: " & _ |
07 | Format(liczbaPI, "0000.0000" ) |
09 | Debug.Print "procent: " & Format(liczbaPI, "##.##%" ) |
11 | Debug.Print "format księgowy: " & _ |
12 | Format(liczbaPI * 10000, "# ###.00" ) |
3. Przykład przedostatni dotyczy formatowania tekstu.
02 | Dim strTekst As String |
03 | strTekst = "Projekt VBA Szkolenia VBA" |
05 | Debug.Print "z wielkich liter: " & Format(strTekst, ">" ) |
07 | Debug.Print "z małych liter: " & Format(strTekst, "<" ) |
4. Ostatni zestaw przykładów to dodatkowe możliwości formatowania wartości liczbowych ze względu na znak liczby i opcjonalny wynik zero.
01 | Sub Format_Ciekawostki() |
05 | Debug.Print "Ciekawostka 1: " & _ |
06 | Format(varMix, "##0 PLN;-##0 PLN" ) |
09 | Debug.Print "Ciekawostka 2: " & _ |
10 | Format(varMix, "# ##0 PLN;-# ##0 PLN;Zero" ) |
No dobrze, dla osób, które dobrnęły do końca 2 ważne informacje- tradycyjnie informacja dobra i zła. Ta dobra jest taka, że konstrukcja parametrów formatowania jest tożsama z tą, którą większość z osób zna z Excela jako
niestandardowe formatowanie komórek. A zła informacja jest taka, że
funkcja Format zwraca... tekst (String), nawet wtedy gdy formatowaniu poddajemy wartości liczbowe.
Brak komentarzy:
Prześlij komentarz