Note: The other languages of the website are Google-translated. Back to English

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

Запустити макроси, натиснувши командну кнопку, є загальним завданням у Excel, але чи намагалися ви коли-небудь виконувати макрокоди на основі значення, яке вибрано зі спадного списку? Це означає, що коли ви вибираєте один елемент зі спадного списку, конкретний макрос буде спрацьовувати відразу. Ця стаття запропонує вам корисний код для вирішення цієї роботи.

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


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

Немає прямого способу виконати це завдання, але, такий код VBA може вам допомогти, зробіть так:

1. По-перше, створіть розкривний список, як вам потрібно, див. Знімок екрана:

doc запустити макрос зі спадного меню 1

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

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

Private Sub Worksheet_Change(ByVal Target As Range)
	If Not Intersect(Target, Range("E1")) Is Nothing Then
	    Select Case Range("E1")
	        Case "Insert Blank rows": Macro1
	        Case "Hide All Sheets": Macro2
            Case "Convert to Date": Macro3
	    End Select
	End If
	End Sub

doc запустити макрос зі спадного меню 2

примітки: У наведеному вище коді, E1 це комірка містить випадаючий список, змініть імена макросів та значення випадаючого списку на потрібні.

3. А потім збережіть і закрийте це вікно коду, тепер, коли ви виберете елемент Вставити порожні рядки зі спадного списку, буде запущено Macro1 і так далі ...


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

Як запустити макрос, коли значення комірки змінюється в Excel?

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

Як запустити макрос автоматично перед друком у Excel?

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

Як запустити макрос, коли аркуш вибрано з книги?


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

Kutools для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%

  • Повторне використання: Швидко вставте складні формули, діаграми і все, що ви використовували раніше; Шифрувати комірки з паролем; Створити список розсилки та надсилати електронні листи ...
  • Супер формула бар (легко редагувати кілька рядків тексту та формули); Макет читання (легко читати та редагувати велику кількість комірок); Вставте у відфільтрований діапазон...
  • Об’єднати клітинки / рядки / стовпці без втрати даних; Вміст розділених комірок; Об'єднати повторювані рядки / стовпці... Запобігання дублюючим клітинам; Порівняйте діапазони...
  • Виберіть Повторюваний або Унікальний Рядки; Виберіть Пусті рядки (усі клітинки порожні); Супер знахідка та нечітка знахідка у багатьох робочих зошитах; Випадковий вибір ...
  • Точна копія Кілька клітинок без зміни посилання на формулу; Автоматичне створення посилань на кілька аркушів; Вставте кулі, Прапорці та інше ...
  • Витяг тексту, Додати текст, Видалити за позицією, Видаліть пробіл; Створення та друк проміжних підсумків підкачки; Перетворення вмісту комірок та коментарів...
  • Супер фільтр (зберегти та застосувати схеми фільтрів до інших аркушів); Розширене сортування за місяцем / тижнем / днем, частотою та іншим; Спеціальний фільтр жирним, курсивом ...
  • Поєднайте робочі зошити та робочі аркуші; Об’єднати таблиці на основі ключових стовпців; Розділіть дані на кілька аркушів; Пакетне перетворення xls, xlsx та PDF...
  • Понад 300 потужних функцій. Підтримує Office / Excel 2007-2019 та 365. Підтримує всі мови. Простота розгортання на вашому підприємстві чи в організації. Повна функція 30-денної безкоштовної пробної версії. 60-денна гарантія повернення грошей.
вкладка kte 201905

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

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Коментарі (5)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
efectivamente funciona pero quiero aplicarlo en varias celdas, que variable debo cambiar?
Цей коментар був мінімізований модератором на сайті
Чи є спосіб використовувати код VBA для цього в Access? Спасибі
Цей коментар був мінімізований модератором на сайті
Здрастуйте!

Al applicarlo me sale un error de compilación: La declaración del procedimiento no concide con la descripción del evento o el procedimiento que tiene el mismo nombre. Que quiere decir eso? que debo cambiar/arreglar? Gracias
Цей коментар був мінімізований модератором на сайті
Добрий ранок. Чи зможете ви виконати макрос зі спадного меню для наступного: Щоб запустити макрос і зберегти окремі аркуші для кожного елемента зі спадного меню? У вашому випадку це має виглядати так:
1. Ви запускаєте макрос, а потім відокремлюєте аркуш зі значеннями для "Вставити порожні рядки", збереженими у призначеній папці
2. Відокремлений аркуш зі значеннями для «Сховати всі аркуші:» збережено у визначеній папці
3. Окремий аркуш зі значеннями «Перетворити на дату», збережений у визначеній папці.
4. Макрос готовий


В основному я можу встановити все це, за винятком того, що макрос автоматично змінює вибір зі спадного меню?


Дякую


Іван
Цей коментар був мінімізований модератором на сайті


ПЕРШИЙ КОД ПРАЦЮЄ ІДЕАЛЬНОПриватний допоміжний робочий лист_Change(ByVal Target As Range)
Якщо не перетинається(ціль, діапазон("D1")) то нічого
Виберіть діапазон випадків ("D1")
         Випадок «0.5»: Половина
         Випадок «1»: один
         Випадок «1.25»: OneTwentyFive
End Select
End If
End Sub
ДРУГИЙ КОД НЕ ПРАЦЮЄ (виправте, будь ласка, наведене нижче)
Зміна приватного підпорядкування (ByVal Target As Range)
Якщо не перетинається(ціль, діапазон("D2")) то нічого
Виберіть діапазон випадків ("D2")
         Справа «9.53»: дев’ять п’ять три
End Select
End If
End Sub
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0  Персонажі
Рекомендовані місця