Viimeksi päivitetty: elokuu 2021; Microsoft Excel 365, 2019, 2016.
Tämän päivän VBA for Excel Automation -opetusohjelmassa opimme kuinka voimme ohjelmallisesti muuttaa solun väriä solun arvon perusteella.
Voimme käyttää tätä tekniikkaa, kun kehitämme esimerkiksi yksinkertaista tilamittaristoa.
Perustaa
Jos et vielä kehitä Excelissä, suosittelemme tutustumaan Excel-makrojen esittelyoppaaseemme . Erityisesti sinun on varmistettava, että Kehittäjä-välilehti on käytettävissä Microsoft Excel -nauhassasi, koska käytät sitä yksinkertaisen koodin kirjoittamiseen.
- Avaa Microsoft Excel. Huomaa, että tässä opetusohjelmassa olevan koodin odotetaan toimivan Excel 2007:ssä ja uudemmissa versioissa.
- Lisää tyhjään taulukkoon seuraava taulukko:

- Siirry nyt eteenpäin ja määritä nimetty alue napsauttamalla: Kaavat>> Määritä nimi

Solun sisävärin muuttaminen arvon perusteella Cell.Interior.Color-toiminnolla
- Napsauta Kehittäjä - merkintää nauhassa.
- Paina Visual Basic tai Alt+F11 avataksesi kehittäjän VBA-editorin.
- Korosta seuraavaksi työtaulukko, jossa haluat suorittaa koodisi. Vaihtoehtoisesti voit valita moduulin, jossa on VBA-koodisi.
- Mene eteenpäin ja liitä tämä koodi. Esimerkissämme muokkaamme solualueen sisäväriä tiettyihin solujen RGB-arvoihin, jotka vastaavat punaista, keltaista ja vihreää väriä.
- Käytämme erityisesti Excel VBA -menetelmää Cell.Interior.Color ja välitämme vastaavan RGB-arvon tai väriindeksin.
Sub Color_Cell_Condition()
Dim MyCell As Range
Dim StatValue As String
Dim StatusRange As Range
Set StatusRange = Range("Status")
For Each MyCell In StatusRange
StatValue = MyCell.Value
Select Case StatValue
Case "Progressing"
MyCell.Interior.Color = RGB(0, 255, 0)
Case "Pending Feedback"
MyCell.Interior.Color = RGB(255, 255, 0)
Case "Stuck"
MyCell.Interior.Color = RGB(255, 0, 0)
End Select
Next MyCell
End Sub
- Suorita koodisi joko painamalla F5 tai Run>> Run Sub / UserForm.
- Huomaat, että tilan hallintapaneeli on täytetty alla olevan kuvan mukaisesti:

- Tallenna koodi ja sulje VBA-editori.