Перейти до основного матеріалу

Як змінити колір текстового поля на основі значення в Excel?

В Excel ми можемо застосувати функцію умовного форматування для зміни кольору тла на основі значення комірки, але в цій статті я розповім про те, як змінити колір текстового поля на основі значення комірки або значення в текстовому полі.

Змініть колір текстового поля на основі значення комірки за допомогою коду VBA

Змінюйте колір текстового поля на основі значення в текстовому полі за допомогою коду VBA


стрілка синя права міхур Змініть колір текстового поля на основі значення комірки за допомогою коду VBA

Скажімо, якщо значення комірки в А1 більше, ніж значення комірки в В1, я хочу, щоб текстове поле було заповнене червоним кольором, навпаки, текстове поле повинно бути заповнене жовтим кольором. Будь ласка, виконайте цю роботу, виконавши такі дії:

1. Вставте текстове поле, клацнувши Розробник > Insert > Текстове поле (керування ActiveX), а потім намалюйте текстове поле, див. знімок екрана:

Колір текстового поля doc на основі значення 1

2. Потім клацніть правою кнопкою миші текстове поле та виберіть Переглянути код з контекстного меню, щоб відкрити Microsoft Visual Basic для додатків вікно, а потім замініть оригінальний код таким кодом VBA у порожній модуль:

Код VBA: Зміна кольору текстового поля на основі значень комірок:

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 на основі значення 2

примітки: У наведеному вище коді, TextBox1 це назва текстового поля, яке ви вставили, A1 та B1 - це дві клітинки, на яких ви хочете змінити колір текстового поля, змініть їх відповідно до ваших потреб.

3. Потім збережіть і закрийте вікно коду та вийдіть з Режим дизайну, тепер, якщо клітинка A1 більше B1, при введенні тексту в текстове поле він буде заповнений червоним кольором, а якщо A1 менше B1, то при введенні значення в текстове поле він буде заповнений жовтим кольором, див. скріншот:

Колір текстового поля doc на основі значення 3


стрілка синя права міхур Змінюйте колір текстового поля на основі значення в текстовому полі за допомогою коду VBA

Якщо ви хочете змінити колір текстового поля на основі значення в текстовому полі, наприклад, коли значення в текстовому полі становить від 1 до 10, кольором заповненого текстового поля є червоний, кольором текстового поля є зелений, якщо значення між 11 і 20, якщо є інші значення, колір текстового поля жовтий. Щоб вирішити це завдання, застосуйте наведений нижче код VBA.

1. Вставивши текстове поле, клацніть правою кнопкою миші та виберіть Переглянути код з контекстного меню, щоб відкрити Microsoft Visual Basic для додатків вікно, а потім замініть оригінальний код таким кодом VBA у порожній модуль:

Код VBA: Зміна кольору текстового поля на основі значення в текстовому полі:

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 на основі значення 4

примітки: У наведеному вище коді, Текстове поле1 - це назва вставленого текстового поля, і ви можете змінити значення та колір тла в коді на свій власний.

2. Потім збережіть і закрийте вікно коду та вийдіть з Режим дизайну, тепер, якщо ви введете значення від 1 до 10 у текстове поле, колір його фону стане червоним, значення від 11 до 20, колір фону текстового поля стане зеленим, інші значення, він стане жовтим, як показано на наступному скріншоті:

Колір текстового поля doc на основі значення 5


Статті по темі:

Як вставити малюнок у текстове поле?

Як встановити значення за замовчуванням у текстовому полі?

Як дозволити вводити в текстове поле лише цифри?

Як застосувати перевірку правопису в текстовому полі?

Найкращі інструменти продуктивності офісу

🤖 Kutools AI Aide: Революціонізуйте аналіз даних на основі: Інтелектуальне виконання   |  Згенерувати код  |  Створення спеціальних формул  |  Аналізуйте дані та створюйте діаграми  |  Викликати функції Kutools...
Популярні функції: Знайдіть, виділіть або визначте дублікати   |  Видалити порожні рядки   |  Об’єднайте стовпці або клітинки без втрати даних   |   Раунд без Формули ...
Супер пошук: VLookup за кількома критеріями    Багатозначний VLookup  |   VLookup на кількох аркушах   |   Нечіткий пошук ....
Розширений розкривний список: Швидке створення випадаючого списку   |  Залежний спадний список   |  Виберіть розкривний список, що вибирається ....
Менеджер колонок: Додайте конкретну кількість стовпців  |  Перемістити стовпці  |  Перемкнути статус видимості прихованих стовпців  |  Порівняйте діапазони та стовпці ...
Особливості: Фокус сітки   |  Перегляд дизайну   |   Велика панель формул    Диспетчер робочих книг і аркушів   |  Бібліотека ресурсів (автотекст)   |  Вибір дати   |  Об’єднайте робочі аркуші   |  Шифрування/розшифрування клітинок    Надсилайте листи за списком   |  Супер фільтр   |   Спеціальний фільтр (фільтр жирний/курсив/закреслений...) ...
Топ-15 наборів інструментів12 текст Tools (додати текст, Видалити символи, ...)   |   50 + Графік типи (діаграма Ганта, ...)   |   40+ Практичний Формули (Розрахуйте вік на основі дня народження, ...)   |   19 вставка Tools (Вставте QR-код, Вставити зображення зі шляху, ...)   |   12 Перетворення Tools (Числа до слів, Валютна конверсія, ...)   |   7 Злиття та розділення Tools (Розширені комбіновані ряди, Розділені клітини, ...)   |   ... і більше

Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу.  Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...

Опис


Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
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