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

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

Чи можливо нам змінити значення комірки, клацнувши клітинку в Excel? Наприклад, коли ви клацаєте певну клітинку А1, вперше на ній відображається текст «Excel», якщо ви клацаєте ще раз А1, відображається текст «Word», а текст «Outlook» відображається, коли ви натискаєте цей клітина в третій раз. У цьому випадку значення в комірці A1 буде повторюватися від “Excel” до “Word” до “Outlook” до “Excel” ……, як показано на наступному знімку екрана:

змініть значення документа, натиснувши 1

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


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

Щоб виконати це завдання в Excel, наведений нижче код VBA може вам допомогти, виконайте наступні дії:

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

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

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'Updateby Extendoffice
  Application.EnableEvents = False
  With Target
  If .Address = Range("A1").Address Then
    Select Case .Value
      Case "Excel"
        .Value = "Word"
      Case "Word"
        .Value = "Outlook"
      Case "Outlook"
        .Value = "Excel"
      Case Else
        .Value = "Word"
    End Select
  End If
  End With
  Range("A2").Select
  Application.EnableEvents = True
End Sub

змініть значення документа, натиснувши 2

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

2. Після вставки коду збережіть код і закрийте вікно. Тепер, коли ви натискаєте клітинку А1 вперше, одразу відображається текст «Excel», клацніть ще раз, з'являється текст «Word», відображається текст «Outlook», якщо натиснути на нього втретє, див. скріншот:

змініть значення документа, натиснувши 1


Інші відповідні статті:

Як фільтрувати дані, просто клацнувши вміст комірки в Excel?

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


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

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

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

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

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Коментарі (7)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
Я намагаюся застосувати це до цілого стовпця окремих клітинок, а не лише до однієї клітинки. Це можливо? Коли я зміню діапазон з "A1" на "A1:A100", нічого не відбувається, коли я клацаю клітинки в цьому діапазоні.
Цей коментар був мінімізований модератором на сайті
Я це зробив, але нікому не скажу MUWAHAHAHAHAHAHAHAHA
Цей коментар був мінімізований модератором на сайті
Ви можете зробити це, оголосивши діапазон, який ви хочете мати, як KeyCells, а потім помістити його в метод Application.Intersection. Це дозволить вам змінити значення на ваш вибір з усіх клітинок. Працювало для мене, але я погано пояснюю ^^

Потускнение KeyCells як діапазон

Встановити KeyCells = діапазон ("A1:A100")

Якщо не Application.Intersect(KeyCells, Range(Target.Address)) - це нічого, то

Виберіть Case .Value

...
Цей коментар був мінімізований модератором на сайті
Ви можете зробити це, оголосивши діапазон, який ви хочете мати, як KeyCells, а потім помістити його в метод Application.Intersection. Це дозволить вам змінити значення на ваш вибір з усіх клітинок. Працювало для мене, але я погано пояснюю ^^


Application.EnableEvents = False
З Target


Потускнение KeyCells як діапазон

Встановити KeyCells = діапазон ("A1:A100")

Якщо не Application.Intersect(KeyCells, Range(Target.Address)) - це нічого, то

Виберіть Case .Value

...
Цей коментар був мінімізований модератором на сайті
Це остаточний код, який спрацював для мене. Я використовую його, щоб перевірити клітинку, коли елемент завершено.
Приватний додатковий аркуш_SelectionChange(ByVal Target As Range)
  Application.EnableEvents = False
    З Target
      Темні ключові клітинки як діапазон
      Встановити KeyCells = Range("D6:D8000")
      Якщо не Application.Intersect(KeyCells, Range(Target.Address)) - це нічого, то
        Виберіть Case .Value
          регістр "ü"
            .Value = ""
          Випадок ""
            .Value = "ü"
        End Select
      End If
    Кінець з
  Application.EnableEvents = True
End Sub
Цей коментар був мінімізований модератором на сайті
Цей коментар був мінімізований модератором на сайті
Це чудова інформація, дякую всім за внесок! Чи можна застосувати цей самий тип підходу зі значенням пошуку або індексу\відповідності?

Наприклад, якщо я клацну значення в A1, чи можна налаштувати VBA на індексування цього значення в іншому стовпці аркуша та відображення відповідного значення в B1? Ще раз дякую вам!
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця

Слідуй за нами

Copyright © 2009 - WWW.extendoffice.com. | Всі права захищені. На основі ExtendOffice. | Карта сайту
Microsoft та логотип Office є товарними знаками або зареєстрованими товарними знаками Microsoft Corporation у США та / або інших країнах.
Захищений Sectigo SSL