Ga naar hoofdinhoud

Hoe verander je de tekstvakkleur op basis van waarde in Excel?

In Excel kunnen we de functie Voorwaardelijke opmaak toepassen om de achtergrondkleur te wijzigen op basis van de celwaarde, maar in dit artikel zal ik het hebben over het wijzigen van de tekstvakkleur op basis van de celwaarde of waarde in het tekstvak.

Verander de kleur van het tekstvak op basis van de celwaarde met VBA-code

Verander de kleur van het tekstvak op basis van de waarde in het tekstvak met VBA-code


pijl blauw rechts bel Verander de kleur van het tekstvak op basis van de celwaarde met VBA-code

Laten we zeggen dat als de celwaarde in A1 groter is dan de celwaarde in B1, ik wil dat het tekstvak wordt gevuld met een rode kleur, integendeel, het tekstvak moet worden gevuld met een gele kleur. Voer deze taak uit met de volgende stappen:

1. Voeg een tekstvak in door te klikken op Ontwikkelaar > Invoegen > Tekstvak (ActiveX-besturingselement), en teken vervolgens een tekstvak, zie screenshot:

doc tekstvak kleur gebaseerd op waarde 1

2. Klik vervolgens met de rechtermuisknop op het tekstvak en selecteer Bekijk code vanuit het contextmenu om het Microsoft Visual Basic voor toepassingen venster en vervang vervolgens de originele code door de volgende VBA-code in de lege module:

VBA-code: verander de kleur van het tekstvak op basis van celwaarden:

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

doc tekstvak kleur gebaseerd op waarde 2

Note: In de bovenstaande code, Tekstvak1 is de tekstvaknaam die je hebt ingevoegd, A1 en B1 zijn de twee cellen waarvan u de tekstvakkleur wilt wijzigen op basis van, verander ze naar uw behoefte.

3. Sla vervolgens het codevenster op en sluit het, en sluit het Ontwerpmodus, nu, als cel A1 groter is dan B1 en u tekst in het tekstvak typt, wordt deze gevuld met een rode kleur, en als A1 kleiner is dan B1, wordt deze gevuld met een gele kleur wanneer u een waarde invoert in het tekstvak, zie screenshot:

doc tekstvak kleur gebaseerd op waarde 3


pijl blauw rechts bel Verander de kleur van het tekstvak op basis van de waarde in het tekstvak met VBA-code

Als u de kleur van het tekstvak wilt wijzigen op basis van de waarde in het tekstvak, bijvoorbeeld wanneer de waarde in het tekstvak tussen 1 en 10 ligt, is de gevulde kleur van het tekstvak rood, de kleur van het tekstvak is groen als de waarde tussen 11 en 20 ligt, als dat zo is andere waarden is de kleur van het tekstvak geel. Pas de onderstaande VBA-code toe om deze taak uit te voeren.

1. Nadat u een tekstvak heeft ingevoegd, klikt u er met de rechtermuisknop op en selecteert u Bekijk code vanuit het contextmenu om het Microsoft Visual Basic voor toepassingen venster en vervang vervolgens de originele code door de volgende VBA-code in de lege module:

VBA-code: verander de kleur van het tekstvak op basis van de waarde in het tekstvak:

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

doc tekstvak kleur gebaseerd op waarde 4

Note: In de bovenstaande code, Tekstvak1 is de naam van het tekstvak dat u invoegt, en u kunt de waarden en achtergrondkleur in de code naar uw eigen kleur wijzigen.

2. Sla vervolgens het codevenster op en sluit het, en sluit het OntwerpmodusAls u nu de waarde tussen 1 en 10 in het tekstvak invoert, wordt de achtergrondkleur rood, de waarde tussen 11 en 20, wordt de achtergrondkleur van het tekstvak groen, andere waarden worden geel zoals in het volgende screenshot wordt getoond:

doc tekstvak kleur gebaseerd op waarde 5


Gerelateerde artikelen:

Hoe een afbeelding in een tekstvak invoegen?

Hoe stel ik een standaardwaarde in een tekstvak in?

Hoe kan ik toestaan ​​dat alleen cijfers worden ingevoerd in een tekstvak?

Hoe de spellingcontrole in het tekstvak toe te passen?

Beste Office-productiviteitstools

🤖 Kutools AI-assistent: Een revolutie teweegbrengen in de data-analyse op basis van: Intelligente uitvoering   |  Genereer code  |  Aangepaste formules maken  |  Analyseer gegevens en genereer grafieken  |  Roep Kutools-functies aan...
Populaire functies: Zoek, markeer of identificeer duplicaten   |  Verwijder lege rijen   |  Combineer kolommen of cellen zonder gegevens te verliezen   |   Ronde zonder formule ...
Super opzoeken: Meerdere criteria VLookup    VLookup met meerdere waarden  |   VOpzoeken over meerdere bladen   |   Fuzzy opzoeken ....
Geavanceerde vervolgkeuzelijst: Maak snel een vervolgkeuzelijst   |  Afhankelijke vervolgkeuzelijst   |  Multi-select vervolgkeuzelijst ....
Kolom Beheerder: Voeg een specifiek aantal kolommen toe  |  Kolommen verplaatsen  |  Schakel de zichtbaarheidsstatus van verborgen kolommen in  |  Vergelijk bereiken en kolommen ...
Uitgelichte functies: Raster focus   |  Ontwerpweergave   |   Grote formulebalk    Werkmap- en bladbeheer   |  resource Library (Auto-tekst)   |  Datumkiezer   |  Combineer werkbladen   |  Cellen coderen/decoderen    Stuur e-mails per lijst   |  Super filter   |   Speciaal filter (filter vet/cursief/doorhalen...) ...
Top 15 gereedschapsets12 Tekst Tools (toe te voegen tekst, Tekens verwijderen, ...)   |   50+ tabel Types (Gantt Chart, ...)   |   40+ Praktisch Formules (Bereken leeftijd op basis van verjaardag, ...)   |   19 Invoeging Tools (QR-code invoegen, Afbeelding invoegen vanaf pad, ...)   |   12 Camper ombouw Tools (Getallen naar woorden, Currency Conversion, ...)   |   7 Samenvoegen en splitsen Tools (Geavanceerd Combineer rijen, Gespleten cellen, ...)   |   ... en meer

Geef uw Excel-vaardigheden een boost met Kutools voor Excel en ervaar efficiëntie als nooit tevoren. Kutools voor Excel biedt meer dan 300 geavanceerde functies om de productiviteit te verhogen en tijd te besparen.  Klik hier om de functie te krijgen die u het meest nodig heeft...

Omschrijving


Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
  • Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!
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