Як запустити макрос на основі значення комірки в Excel?
Припустимо, у моїй книзі є кілька макрокодів, і тепер я хочу запустити ці коди на основі значення комірки. У цій статті я розповім про кілька ситуацій, які можуть виникнути у вашій щоденній роботі під час використання Excel.
Запустити або запустити макрос, якщо значення комірки дорівнює певному тексту з кодом VBA
Запустити або запустити макрос, якщо значення комірки більше або менше, ніж певне значення з кодом VBA
Наприклад, якщо значення в комірці A1 знаходиться між 10 і 50, запустіть macro1, а якщо значення більше 50, запустіть macro2. Щоб вирішити цю роботу в Excel, застосуйте такий код VBA.
1. Клацніть правою кнопкою миші вкладку аркуша, на якій потрібно виконати макрос на основі значення комірки, а потім виберіть Переглянути код з контекстного меню та у відкритому вікні Microsoft Visual Basic для програм вікно, скопіюйте та вставте наступний код у порожній модуль:
Код VBA: Запустити макрос, якщо значення комірки більше або менше:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Cells.Count > 1 Then Exit Sub
If IsNumeric(Target) And Target.Address = "$A$1" Then
Select Case Target.Value
Case 10 To 50: Macro1
Case Is > 50: Macro2
End Select
End If
End Sub
примітки: У наведеному вище коді:
A1 це комірка, яка містить конкретне значення, на якому ви хочете запустити макрос;
Випадок 10 до 50: Макро1: це означає, що якщо значення між 10 і 50, запустіть Macro1;
Справа> 50: Macro2: це означає, що якщо значення більше 50, запустіть Macro2.
Будь ласка, змініть назви макросів та критерії цих тез відповідно до ваших потреб, а також ви можете додати більше критеріїв, слідуючи випадок сценарій
2. Потім збережіть і закрийте це вікно коду, тепер, коли введене значення знаходиться в діапазоні від 10 до 50 у комірці A1, буде активовано Macro1, якщо введене значення більше 50, виконується Macro2.
Запустити або запустити макрос, якщо значення комірки дорівнює певному тексту з кодом VBA
Якщо ви хочете запустити макрос на основі конкретного тексту в комірці, наприклад, запустити макрос1, якщо введено текст “Видалити”, і запустити макрос2, якщо введено текст “Вставити”. Наступний код може зробити вам послугу.
1. Клацніть правою кнопкою миші аркуш, який потрібно виконати, макрос на основі значення комірки, а потім виберіть Переглянути код з контекстного меню та у відкритому вікні Microsoft Visual Basic для програм вікно, скопіюйте та вставте наступний код у порожній модуль:
Код VBA: запускати макрос, якщо значення клітинки є певним текстом
Sub worksheet_change(ByVal target As Range)
Set target = Range("A1")
If target.Value = "Delete" Then
Call Macro1
End If
If target.Value = "Insert" Then
Call Macro2
End If
End Sub
примітки: У наведеному вище коді "видаляти"І"Insert- це тексти комірок, на основі яких ви хочете запускати макроси, та Макро1 та Макро2 - це макроси, які ви хочете виконати на основі тексту. Будь ласка, змініть їх на свої потреби.
2. Потім збережіть цей код і закрийте вікно, тепер, коли ви вводите текст «Видалити» в комірку А1, запускається макро1, якщо введено текст «Вставити», макро2 буде виконано.
Статті по темі:
Як запустити макрос, коли значення комірки змінюється в Excel?
Як запустити макрос автоматично перед друком у Excel?
Як запустити макрос на основі значення, вибраного зі спадного списку в Excel?
Як запустити макрос, клацнувши гіперпосилання в Excel?
Як запустити макрос, коли аркуш вибрано з книги?
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!