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

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

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

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


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


Ви можете запустити наведений нижче код VBA, щоб приховати або показати кнопку команди на основі вказаного значення комірки в Excel.

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

2. У спливаючому Microsoft Visual Basic для додатків вікно, скопіюйте та вставте наведений нижче код VBA в код вікна.

Код VBA: приховання або відображення командної кнопки на основі вказаного значення комірки

Private Sub Worksheet_Change(ByVal Target As Range)
    Application.ScreenUpdating = False
    If Cells(1, 1).Value <> "1" Then
        Me.CommandButton1.Visible = True
    Else
        Me.CommandButton1.Visible = False
    End If
    Application.ScreenUpdating = True
End Sub

примітки: в коді, Клітини (1, 1), 1 і CommandButton1 вказують, що CommandButton1 буде приховано, коли комірка A1 містить номер 1, і відображатиметься, якщо комірка A1 містить будь-які інші значення, крім цифри 1. Дивіться знімок екрана нижче. І ви можете змінити їх залежно від ваших потреб.


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


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

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% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Коментарі (11)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
hola que tal, tengo un boton con macro, que me devuelve a una hoja 'menu', pero no quiero que ese boton aparezca en la hoja menu como le puedo hacer?'


Ура. -
Цей коментар був мінімізований модератором на сайті
Привіт, Себастія,

Dónde debería mostrarse?
- Uno es la hoja de menu
- El botón está integrado en una hoja diferente, ні?
Цей коментар був мінімізований модератором на сайті
Я вставив цей код і ввів назву своєї кнопки (Готово), посилався на опорну клітинку (P11 - 16, 11), але щоразу, коли я вношу зміни до опорної клітинки (P11), я отримую помилку компіляції, і вона висвітлює Розділ коду ".Finish", який, здається, означає назву кнопки, яку я ввів, "Finish" не знайдено на робочому аркуші. Я підтвердив, як у спадному списку зліва від рядка формул, так і в області «визначення імені» на вкладці «Формула», що моя назва кнопки насправді «Готово», але вона все одно не працює.


Будь-яка допомога?
Цей коментар був мінімізований модератором на сайті
Привіт, Брайс,
Я змінив назву кнопки на «Готово» на своєму робочому аркуші, і вона добре працює без жодних помилок.
Ви не проти протестувати код у новій порожній книзі?
Дякуємо за ваш коментар.
Цей коментар був мінімізований модератором на сайті
Використовуйте кнопку керування ActiveX.
Цей коментар був мінімізований модератором на сайті
Привіт

Я новачок у VBA, я вставив цей код у новий Excel. Одна кнопка CommnadButton на Sheet1, але код не працює.

Чи потрібно мені щось робити перед цим?


Спасибо заранее
Цей коментар був мінімізований модератором на сайті
Приватний допоміжний робочий лист_Change(ByVal Target As Range)
Application.ScreenUpdating = Невірний
Якщо клітинки(1, 1).Значення <> "1" Тоді
Me.Shapes("Button 1").Visible = True
Ще
Me.Shapes("Button 1") End If
Application.ScreenUpdating = True
End Sub
Цей коментар був мінімізований модератором на сайті
Чомусь після того, як кнопка переходить із невидимої назад у видиму, кнопка більше не працює. Якщо я вставлю в код комбінацію клавіш Alt + F11, вибираю підпорядковану частину XXX() і запускаю з F5, код працює для мого макросу. Чому він більше не працює, коли я натискаю кнопку? у властивостях 'Enabled' встановлено значення true
Цей коментар був мінімізований модератором на сайті
hola, el codigo esta bien? es que no me funciona y ya intente varias cosas para que funcione y nana, ayuda por favor es que lo necesito para algo importante :c
Цей коментар був мінімізований модератором на сайті
Здрастуйте!
Alguien sabe como puedo hacer para que el boton comando aparezca o desaparezca segun información de otra hoja?
El ejemplo está muy bueno, pero las celdas son de la misma hoja donde esta el boton. Вам необхідна окулярна інформація про інше.

Спасибо!
Цей коментар був мінімізований модератором на сайті
привіт,
Припустимо, значення, яке використовується для відображення або приховування командної кнопки, знаходиться в A1 of Sheet1, і кнопка Comman знаходиться в Sheet2. Відкрийте лист 1, клацніть правою кнопкою миші вкладку аркуша та клацніть Переглянути код. На відкритті Microsoft Visual Basic для додатків скопіюйте наступний код VBA у вікно Sheet1 (Код), а потім натисніть кнопку інший + F11 ключі, щоб закрити його.
примітки: Будь ласка, змініть клітинки(1, 1),"1"І"Sheet2"як вам потрібно.
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.ScreenUpdating = False
    If Cells(1, 1).Value <> "1" Then
        Sheets("Sheet2").CommandButton1.Visible = True
    Else
        Sheets("Sheet2").CommandButton1.Visible = False
    End If
    Application.ScreenUpdating = True
End Sub
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця