Ten samouczek pokaże, jak formatować komórki za pomocą VBA.
Formatowanie komórek
Istnieje wiele właściwości, które można ustawić dla (zakresu) komórek, takich jak:
1234567891011 | Sub SetCellFormat()Z Arkuszami("Arkusz1").Range("B5:C7").HorizontalAlignment = xlHAlignDistributed.AddIndent = Prawda.Font.FontStyle = "Kursywa".NumberFormat = "Ogólne".Kolor.wnętrza = RGB(128, 100, 250)Kończyć zNapis końcowy |
Zobaczmy je w kolejności alfabetycznej:
Dodaj wcięcie
Po ustawieniu wartości tej właściwości na True tekst zostanie automatycznie wcięty, gdy wyrównanie tekstu w komórce zostanie ustawione w poziomie lub w pionie na równy rozkład (zobacz HorizontalAlignment i VerticalAlignment).
12345 | Z Arkuszami("Arkusz1").Range("A1").Orientacja = xlPionowy.VerticalAlignment = xlVAlignDistributed.AddIndent = PrawdaKończyć z |
Granice
Możesz ustawić format obramowania komórki. Zobacz tutaj, aby uzyskać więcej informacji o granicach.
Jako przykład możesz ustawić czerwoną przerywaną linię wokół komórki B2 na arkuszu 1 w ten sposób:
1 | Worksheets("Arkusz1").Range("B2").BorderAround LineStyle:=xlDash, ColorIndex:=3 |
Czcionka
Możesz dostosować format czcionki w komórce, ustawiając nazwę czcionki, styl, rozmiar, kolor, dodając podkreślenia i efekty (przekreślenie, indeks dolny lub górny). Zobacz tutaj, aby uzyskać więcej informacji o czcionkach komórek.
Oto kilka przykładów:
12345 | Z zakresem ("A1:C5"). Czcionka.Nazwa = "Wiek".FontStyle = "Pogrubienie".Przekreślenie = PrawdaKończyć z |
FormułaUkryta
Ta właściwość zwraca lub ustawia wartość wariantu, która wskazuje, czy formuła zostanie ukryta, gdy arkusz jest chroniony. Na przykład:
1 | Arkusze("Arkusz1").Range("A1:B1").FormulaHidden = True |
Wyrównanie w poziomie
Ta właściwość formatu komórki właściwości zwraca lub ustawia wartość wariantu, która reprezentuje wyrównanie w poziomie dla określonego obiektu. Zwracane lub ustawiane stałe mogą być: xlGeneral, xlCenter, xlDistributed, xlJustify, xlLeft, xlRight, xlFill, xlCenterAcrossSelection. Na przykład:
1 | Arkusze("Arkusz1").Range("D3").HorizontalAlignment = xlRight |
Poziom wcięcia
Zwraca lub ustawia liczbę całkowitą z zakresu od 0 do 15, która reprezentuje poziom wcięcia komórki lub zakresu.
1 | Arkusze("Arkusz1").Range("A1").IndentLevel = 7 |
Wnętrze
Możesz ustawić lub uzyskać zwrócone informacje o wnętrzu komórki: jej Color, ColorIndex, Pattern, PatternColor, PatternColorIndex, PatternThemeColor, PatternTintAndShade, ThemeColor, TintAndShade, w następujący sposób:
123 | If Not Range("A1").Interior.ThemeColor = ThemeColorLight2 ThenZakres("A1").Interior.Pattern = xlPatternUpZakończ, jeśli |
Zablokowany
Ta właściwość zwraca True, jeśli komórka lub zakres jest zablokowany, False, jeśli obiekt można zmodyfikować, gdy arkusz jest chroniony, lub Null, jeśli określony zakres zawiera zarówno zablokowane, jak i odblokowane komórki. Może służyć również do blokowania lub odblokowywania komórek.
Ten przykład odblokowuje komórki A1:B2 w Arkuszu1, aby można je było modyfikować, gdy arkusz jest chroniony.
12 | Worksheets("Arkusz1").Range("A1:B2").Zablokowane = FalseArkusze ("Arkusz1").Chroń |
Połącz komórki
Ustaw tę właściwość na True, jeśli chcesz scalić zakres. Jego wartość przyjmuje True, jeśli określony zakres zawiera scalone komórki. Na przykład, jeśli chcesz scalić zakres C5:D7, możesz użyć tego kodu:
1 | Arkusze("Arkusz1").Range("C5:D7").MergeCells = True |
Format liczbowy
Możesz ustawić format liczbowy w komórce (komórkach) na Ogólne, Liczbowe, Walutowe, Księgowe, Datę, Czas, Procentową, Ułamkową, Naukową, Tekstową, Specjalną i Niestandardową.
Oto przykłady formatów liczb naukowych i procentowych:
12 | Zakres("A1").NumberFormat = "0.00E+00"Zakres("B1").NumberFormat = "0.00%" |
LiczbaFormatLokalny
Ta właściwość zwraca lub ustawia wartość wariantu, która reprezentuje kod formatu obiektu jako ciąg w języku użytkownika.
Orientacja
Za pomocą tej właściwości można ustawić (lub uzyskać zwrócenie) orientację tekstu w komórkach. Jego wartością może być jedna z tych stałych: xlDownward, xlHorizontal, xlUpward, xlVertical lub liczba całkowita od -90 do 90 stopni.
1 | Arkusze("Arkusz1").Range("A1").Orientacja = -60 |
Rodzic
Jest to właściwość tylko do odczytu, która zwraca obiekt nadrzędny określonego obiektu.
Kurcz, aby dopasować
Ta właściwość zwraca lub ustawia wartość wariantu, która wskazuje, czy tekst automatycznie się zmniejsza, aby zmieścić się w dostępnej szerokości kolumny.
1 | Arkusze("Arkusz1").Range("A1").ShrinkToFit = True |
Wyrównanie w pionie
Ta właściwość formatu komórki właściwości zwraca lub ustawia wartość wariantu, która reprezentuje wyrównanie w pionie dla określonego obiektu. Zwracane lub ustawiane stałe mogą być: xlCenter, xlDistributed, xlJustify, xlBottom, xlTop. Na przykład:
1 | Arkusze("Arkusz1").Range("A1").VerticalAlignment = xlTop |
Zawijaj tekst
Ta właściwość zwraca True, jeśli tekst jest zawinięty we wszystkich komórkach w określonym zakresie, False, jeśli tekst nie jest zawinięty we wszystkich komórkach w określonym zakresie, lub Null, jeśli określony zakres zawiera niektóre komórki, które zawijają tekst, i inne komórki, które nie są zawijane.
Na przykład, jeśli masz ten zakres komórek:
poniższy kod zwróci wartość Null w oknie bezpośrednim:
1 | ?Worksheets("Arkusz1").Range("A1:B1").WrapText |