Przejdź do głównej zawartości

Jak zmienić kolor pola tekstowego na podstawie wartości w programie Excel?

W programie Excel możemy zastosować funkcję formatowania warunkowego, aby zmienić kolor tła na podstawie wartości komórki, ale w tym artykule omówię, jak zmienić kolor pola tekstowego na podstawie wartości komórki lub wartości w polu tekstowym.

Zmień kolor pola tekstowego na podstawie wartości komórki z kodem VBA

Zmień kolor pola tekstowego na podstawie wartości w polu tekstowym z kodem VBA


strzałka niebieski prawy bąbelek Zmień kolor pola tekstowego na podstawie wartości komórki z kodem VBA

Powiedzmy, że jeśli wartość komórki w A1 jest większa niż wartość komórki w B1, chcę, aby pole tekstowe było wypełnione kolorem czerwonym, wręcz przeciwnie, pole tekstowe powinno być wypełnione kolorem żółtym. Wykonaj tę pracę, wykonując następujące czynności:

1. Wstaw pole tekstowe, klikając Deweloper > wstawka > Pole tekstowe (formant ActiveX), a następnie narysuj pole tekstowe, zobacz zrzut ekranu:

kolor pola tekstowego doc na podstawie wartości 1

2. Następnie kliknij prawym przyciskiem myszy pole tekstowe i wybierz Wyświetl kod z menu kontekstowego, aby otworzyć plik Microsoft Visual Basic for Applications okno, a następnie zamień oryginalny kod na następujący kod VBA w pustym module:

Kod VBA: Zmień kolor pola tekstowego na podstawie wartości komórek:

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

kolor pola tekstowego doc na podstawie wartości 2

Note: W powyższym kodzie, TextBox1 to nazwa wstawionego pola tekstowego, A1 i B1 to dwie komórki, na podstawie których chcesz zmienić kolor pola tekstowego, zmień je zgodnie z potrzebami.

3. Następnie zapisz i zamknij okno kodu i zamknij Tryb projektowania, teraz, jeśli komórka A1 jest większa niż B1, po wpisaniu tekstu w polu tekstowym zostanie wypełniona kolorem czerwonym, a jeśli A1 jest mniejsze niż B1, podczas wpisywania wartości w polu tekstowym zostanie wypełniona kolorem żółtym, zobacz zrzut ekranu:

kolor pola tekstowego doc na podstawie wartości 3


strzałka niebieski prawy bąbelek Zmień kolor pola tekstowego na podstawie wartości w polu tekstowym z kodem VBA

Jeśli chcesz zmienić kolor pola tekstowego na podstawie wartości w polu tekstowym, na przykład, gdy wartość w polu tekstowym wynosi od 1 do 10, kolor wypełnienia pola tekstowego jest czerwony, kolor pola tekstowego jest zielony, jeśli wartość wynosi od 11 do 20, jeśli jest inne wartości, kolor pola tekstowego jest żółty. Aby poradzić sobie z tym zadaniem, zastosuj poniższy kod VBA.

1. Po wstawieniu pola tekstowego kliknij je prawym przyciskiem myszy i wybierz Wyświetl kod z menu kontekstowego, aby otworzyć plik Microsoft Visual Basic for Applications okno, a następnie zamień oryginalny kod na następujący kod VBA w pustym module:

Kod VBA: Zmień kolor pola tekstowego na podstawie wartości w polu tekstowym:

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

kolor pola tekstowego doc na podstawie wartości 4

Note: W powyższym kodzie, Pole tekstowe 1 to nazwa wstawionego pola tekstowego. Możesz zmienić wartości i kolor tła w kodzie na własne.

2. Następnie zapisz i zamknij okno kodu i zamknij Tryb projektowania, teraz, jeśli wprowadzisz wartość od 1 do 10 w polu tekstowym, jego kolor tła zmieni kolor na czerwony, wartość między 11 a 20, kolor tła pola tekstowego stanie się zielony, inne wartości staną się żółte, jak pokazano na poniższym zrzucie ekranu:

kolor pola tekstowego doc na podstawie wartości 5


Podobne artykuły:

Jak wstawić obrazek do pola tekstowego?

Jak ustawić domyślną wartość w polu tekstowym?

Jak zezwolić tylko na wprowadzanie liczb w polu tekstowym?

Jak sprawdzić pisownię w polu tekstowym?

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
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