V tej vadnici se bomo naučili, kako uporabljati Visual Basic za aplikacije (VBA) za spreminjanje velikosti in sloga besedila v celici Excel na podlagi vsebine celice. Ta vadnica velja za Excel 365, 2021, 2019 in 2016.
Predtekmovanje
Če ste novi pri razvoju Excel VBA, vam priporočam, da si pred ogledom vadnice ogledate naš makro Excel VBA.
Preden začnete s kodiranjem, omogočite zavihek za razvijalce v Excelu na traku, saj drugače ne boste mogli dostopati do urejevalnika Visual Basic.
Spremenite lastnosti besedila celice Excel z VBA
Določite svojo preglednico
Začeli bomo z definiranjem Excelove preglednice, ki jo bomo uporabili kot primer. Lahko ga uporabite, če želite slediti tej vadnici.
- Odprite Microsoft Excel in ustvarite nov Excelov delovni zvezek z omogočenimi makri ( .xlsm ) z imenom Excel_Macros.xlsm
- Shranite preglednico na lokalni pogon.
- Na delovnem listu Sheet1 dodajte spodnjo tabelo:

- Zdaj na traku pritisnite Formule .
- Nato pritisnite Določi ime .
- Določite imenovani obseg, na katerega boste uporabili kodo VBA, kot je prikazano spodaj, in pritisnite V redu .
![Kako nastaviti barvo pisave besedila Excel z VBA? Kako nastaviti barvo pisave besedila Excel z VBA?]()
Uporabite lastnost Cell.Font VBA, da spremenite barvo in slog pisave
- Premaknite se na zavihek Razvijalec .
- Nato pojdite naprej in pritisnite gumb Visual Basic .
- V levem Raziskovalcu projektov označite projekt Excel_Macros.xlsm , nato pritisnite Vstavi in izberite Modul .
- Ustvarjen bo nov modul VBA z imenom Module1 .
- Nadaljujte in v novo ustvarjeni modul prilepite naslednjo kodo:
Sub Color_Cell_Text_Condition()
Dim MyCell As Range
Dim StatValue As String
Dim StatusRange As Range
Set StatusRange = Range("Completion_Status")
'loop through all cells in the range
For Each MyCell In StatusRange
StatValue = MyCell.Value
'modify the cell text values as needed.
Select Case StatValue
'green
Case "Progressing"
With MyCell.Font
.Color = RGB(0, 255, 0)
.Size = 14
.Bold = True
End With
'orange
Case "Pending Feedback"
With MyCell.Font
.Color = RGB(255, 141, 0)
.Size = 14
.Bold = True
End With
'red
Case "Stuck"
With MyCell.Font
.Color = RGB(255, 0, 0)
.Size = 14
.Bold = True
End With
End Select
Next MyCell
End Sub
- Pritisnite gumb Shrani v urejevalniku Visual Basic.
- Zdaj pritisnite Zaženi in nato izberite Run Sub/UserForm (ali preprosto pritisnite F5).
- Premaknite se na delovni list Sheet1 in opazite spremembe. Vašim vnosom v tabelo je bilo dodeljenih več barvnih kod glede na njihovo besedilo (z uporabo barvne funkcije RGB), besedilo pa smo nastavili tako, da je krepko in povečali njegovo velikost.
![Kako nastaviti barvo pisave besedila Excel z VBA? Kako nastaviti barvo pisave besedila Excel z VBA?]()
- Če kode niste shranili, pritisnite gumb Shrani (ali Ctrl+S), nato shranite tudi delovni zvezek.
Dostopajte do makra VBA
- Upoštevajte, da je vaša koda vedno na voljo za zagon z ukazom Makri, ki se nahaja na zavihku Pogled (ali alternativno v Razvijalec | Makri)
![Kako nastaviti barvo pisave besedila Excel z VBA? Kako nastaviti barvo pisave besedila Excel z VBA?]()
Bonus: Cell Style
Excel ponuja možnost ustvarjanja »slogov« celic. Sloge najdete v domačem traku > Slogi:
![slogi pisave excel vba]()
Slogi vam omogočajo, da shranite želeno oblikovanje celic. Nato dodelite ta slog novi celici in vse oblikovanje celice bo takoj uporabljeno. Vključno z velikostjo pisave, barvo celice, stanjem zaščite celic in vsem drugim, kar je na voljo v meniju za oblikovanje celic:
![meni za oblikovanje celic excel]()
Osebno za mnoge modele, na katerih delam, običajno ustvarim slog celice »Vnos«:
Obseg("a1").Slog = "Vnos"
Z uporabo slogov lahko preprosto prepoznate tudi vrste celic na delovnem listu. Spodnji primer bo šel skozi vse celice na delovnem listu in spremenil katero koli celico s Style = »Input« v »InputLocked«:
Zatemni celico kot obseg
Za vsako celico v ActiveSheet.Cells
Če je Cell.Style = "Vnos" nato Cell.Style = "InputLocked"
Konec Če
Naslednja celica