Preskoči na glavno vsebino

Kako spremeniti barvo besedilnega polja glede na vrednost v Excelu?

V Excelu lahko s funkcijo pogojnega oblikovanja spremenimo barvo ozadja glede na vrednost celice, v tem članku pa bom govoril o tem, kako spremeniti barvo polja z besedilom glede na vrednost celice ali vrednost v besedilnem polju.

S kodo VBA spremenite barvo besedilnega polja glede na vrednost celice

Spremenite barvo besedilnega polja glede na vrednost v besedilnem polju s kodo VBA


puščica modri desni mehurček S kodo VBA spremenite barvo besedilnega polja glede na vrednost celice

Recimo, če je vrednost celice v A1 večja od vrednosti celice v B1, želim, da je polje z besedilom napolnjeno z rdečo barvo, nasprotno pa naj bo polje z rumeno barvo. To delo opravite z naslednjimi koraki:

1. S klikom vstavite besedilno polje Razvojni > Vstavi > Besedilno polje (nadzor ActiveX)in nato narišite besedilno polje, glejte posnetek zaslona:

barva polja besedila doc glede na vrednost 1

2. Nato z desno miškino tipko kliknite besedilno polje in izberite Ogled kode iz kontekstnega menija, da odprete Microsoft Visual Basic za aplikacije in nato v prazen modul zamenjajte izvirno kodo z naslednjo kodo VBA:

Koda VBA: Spremenite barvo besedilnega polja glede na vrednosti celic:

Private Sub TextBox1_Change()
    If ActiveSheet.Range("A1").Value > ActiveSheet.Range("B1").Value Then
        Me.TextBox1.BackColor = vbRed
    Else
        Me.TextBox1.BackColor = vbYellow
    End If
End Sub

barva polja besedila doc glede na vrednost 2

Opombe: V zgornji kodi, Besedilno polje 1 je ime vstavljenega polja z besedilom, A1 in B1 sta dve celici, na katerih želite spremeniti barvo besedilnega polja, jih spremenite po svojih željah.

3. Nato shranite in zaprite okno s kodo ter zapustite Način oblikovanja, če je celica A1 večja od B1, bo med vnašanjem besedila v besedilno polje napolnjena z rdečo barvo in če je A1 manjša od B1, bo ob vnosu vrednosti v besedilno polje napolnjena z rumeno barvo, glej posnetek zaslona:

barva polja besedila doc glede na vrednost 3


puščica modri desni mehurček Spremenite barvo besedilnega polja glede na vrednost v besedilnem polju s kodo VBA

Če želite spremeniti barvo polja z besedilom glede na vrednost v polju z besedilom, na primer, ko je vrednost v polju med 1 in 10, je polnjena barva polja za besedilo rdeča, barva polja za besedilo je zelena, če je vrednost med 11 in 20, če je druge vrednosti je barva polja z besedilom rumena. Za reševanje te naloge uporabite spodnjo kodo VBA.

1. Ko vstavite besedilno polje, ga kliknite z desno miškino tipko in izberite Ogled kode iz kontekstnega menija, da odprete Microsoft Visual Basic za aplikacije in nato v prazen modul zamenjajte izvirno kodo z naslednjo kodo VBA:

Koda VBA: Spremenite barvo besedilnega polja glede na vrednost v besedilnem polju:

Private Sub TextBox1_Change()
    On Error Resume Next
    Select Case TextBox1.Value
        Case 1 To 10:
            TextBox1.BackColor = vbRed
        Case 11 To 20:
            TextBox1.BackColor = vbGreen
        Case Else:
            TextBox1.BackColor = vbYellow
    End Select
End Sub

barva polja besedila doc glede na vrednost 4

Opombe: V zgornji kodi, Besedilo1 je ime vstavljenega polja z besedilom, vrednosti in barvo ozadja v kodi pa lahko spremenite v svojo.

2. Nato shranite in zaprite okno s kodo ter zapustite Način oblikovanja, če v polje za besedilo vnesete vrednost med 1 in 10, bo njegova barva ozadja postala rdeča, vrednost med 11 in 20, barva ozadja besedilnega polja bo postala zelena, ostale vrednosti pa bodo rumene, kot je prikazano na sliki spodaj:

barva polja besedila doc glede na vrednost 5


Sorodni članki:

Kako vstaviti sliko v polje z besedilom?

Kako nastaviti privzeto vrednost v besedilnem polju?

Kako dovoliti vnos samo številk v besedilno polje?

Kako uporabiti preverjanje črkovanja v besedilnem polju?

Najboljša pisarniška orodja za produktivnost

🤖 Kutools AI Aide: Revolucionirajte analizo podatkov na podlagi: Inteligentna izvedba   |  Ustvari kodo  |  Ustvarite formule po meri  |  Analizirajte podatke in ustvarite grafikone  |  Prikličite funkcije Kutools...
Priljubljene funkcije: Poiščite, označite ali identificirajte dvojnike   |  Izbriši prazne vrstice   |  Združite stolpce ali celice brez izgube podatkov   |   Krog brez formule ...
Super iskanje: Več kriterijev VLookup    Multiple Value VLookup  |   VLookup na več listih   |   Nejasno iskanje ....
Napredni spustni seznam: Hitro ustvarite spustni seznam   |  Odvisni spustni seznam   |  Večkrat izberite spustni seznam ....
Upravitelj stolpcev: Dodajte določeno število stolpcev  |  Premakni stolpce  |  Preklop stanja vidnosti skritih stolpcev  |  Primerjaj obsege in stolpce ...
Predstavljene funkcije: Mrežni fokus   |  Pogled oblikovanja   |   Velika vrstica formule    Upravitelj delovnih zvezkov in listov   |  Knjižnica virov (Samodejno besedilo)   |  Izbirnik datuma   |  Združite delovne liste   |  Šifriranje/dešifriranje celic    Pošljite e-pošto po seznamu   |  Super filter   |   Poseben filter (filter krepko/ležeče/prečrtano ...) ...
15 najboljših kompletov orodij12 Besedilo Orodja (dodajanje besedila, Odstrani znake,...)   |   50 + Graf Vrste (Gantt Chart,...)   |   40+ Praktično Formule (Izračunajte starost glede na rojstni dan,...)   |   19 vstavljanje Orodja (Vstavite kodo QR, Vstavi sliko s poti,...)   |   12 Pretvorba Orodja (Številke v besede, Pretvorba valut,...)   |   7 Spoji in razdeli Orodja (Napredne kombinirane vrstice, Razdeljene celice,...)   |   ... in več

Napolnite svoje Excelove spretnosti s Kutools za Excel in izkusite učinkovitost kot še nikoli prej. Kutools za Excel ponuja več kot 300 naprednih funkcij za povečanje produktivnosti in prihranek časa.  Kliknite tukaj, če želite pridobiti funkcijo, ki jo najbolj potrebujete...

Opis


Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Nevermind, I figured it out. Instead of making the event which triggers the change "Textbox1_GotFocus()", I made it "Worksheet_SelectionChange(ByVal Target As Range)". Now any time the value in one of the cells changes, the textbox color changes automatically.
This comment was minimized by the moderator on the site
For me, when trying to change the textbox color value based on two cell values, the textbox only updates if you type something into the textbox. I need it to update automatically. Guess I'll just have to learn VBA to figure out why.
This comment was minimized by the moderator on the site
Can someone provide an example workbook so I can see this working? I keep trying but to no avail. Thanks
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations