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

Як зняти прапорець іншого прапорця, якщо в Excel встановлено прапорець?

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

Зніміть інший прапорець, коли новий прапорець позначено кодом VBA


Зніміть інший прапорець, коли новий прапорець позначено кодом VBA

Як показано в наведеній вище демонстрації, десять прапорців мають назви Прапорець1, Прапорець2, Прапорець3, ..., Прапорець10 розділені на 3 групи та розташовані в різних категоріях у таблиці.

У цьому прикладі прапорці 1, 2, 3 знаходяться в одній групі, прапорці 4, 5, 6, 7 — в одній групі, а прапорці 8, 9,10, XNUMX — в одній групі. У кожній групі одночасно можна встановити лише один прапорець. Коли встановлено прапорець, інший прапорець знімається автоматично.

Тепер давайте подивимося, як застосувати наступний код VBA для вирішення цієї проблеми.

1. Клацніть правою кнопкою миші вкладку аркуша та натисніть Переглянути код з контекстного меню.

2. У відкритому Microsoft Visual Basic для додатків вікно , вставте наступний код VBA у Аркуш (Код) вікна.

Код VBA: зніміть позначку іншого прапорця, коли встановлено новий прапорець

Dim xBol As Boolean
'Updated by Extendoffice 20220816
Private Sub CheckBox1_Change()
SetCheckBoxes "CheckBox1"
End Sub

Private Sub CheckBox2_Change()
SetCheckBoxes "CheckBox2"
End Sub

Private Sub CheckBox3_Change()
SetCheckBoxes "CheckBox3"
End Sub

Private Sub CheckBox4_Change()
SetCheckBoxes "CheckBox4"
End Sub

Private Sub CheckBox5_Change()
SetCheckBoxes "CheckBox5"
End Sub

Private Sub CheckBox6_Click()
SetCheckBoxes "CheckBox6"
End Sub

Private Sub CheckBox7_Click()
SetCheckBoxes "CheckBox7"
End Sub
Private Sub CheckBox8_Click()
SetCheckBoxes "CheckBox8"
End Sub
Private Sub CheckBox9_Click()
SetCheckBoxes "CheckBox9"
End Sub
Private Sub CheckBox10_Click()
SetCheckBoxes "CheckBox10"
End Sub

Private Function SetCheckBoxes(mCheckBoxName As String)
Dim x As Long
Dim xAllArr
Dim xArrItem
Dim xI, xJ
If Not xBol Then Exit Function
'In the following line, the checkboxes enclosed in double quotes belong to the same group, and each checkbox is separated by a comma. To add more checkbox groups, please enclose the checkboxes in new double quotes.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
For xI = LBound(xAllArr) To UBound(xAllArr)
If InStr(xAllArr(xI), mCheckBoxName) > 0 Then
xBol = False
xArrItem = Split(xAllArr(xI), ",")
For xJ = LBound(xArrItem) To UBound(xArrItem)
If xArrItem(xJ) <> mCheckBoxName Then
Me.OLEObjects(xArrItem(xJ)).Object.Value = False
End If
Next
End If
Next
xBol = True
End Function

Private Sub Worksheet_Activate()
xBol = True
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
xBol = True
End Sub

примітки:

1) У коді Прапорець1, Прапорець2, ..., Прапорець10 є назвами прапорців;
2) У наступному рядку прапорці, взяті в подвійні лапки, належать до однієї групи, і кожен прапорець розділений комою. Щоб додати більше груп прапорців, візьміть прапорці в нові подвійні лапки.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
3) Прапорці є елемент керування ActiveX прапорці.

3 Натисніть кнопку інший + Q клавіші, щоб закрити Microsoft Visual Basic для додатків вікна.

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


Демонстрація: зніміть прапорець іншого прапорця, коли в Excel встановлено прапорець

  Kutools для Excel містить понад 300 потужних функцій для Microsoft Excel. Спробуйте безкоштовно без обмежень протягом 30 днів. Завантажити зараз!

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

🤖 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 (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations