Не запускается макрос Worksheet_change

Анонимные
2016-09-06T17:13:55+00:00

Windows 10, Office 365. В Excel создаю новую таблицу, копирую макрос из 

https://support.microsoft.com/ru-ru/kb/213612  в модуль1 таблицы. Задача: при изменении ячейки, например, A1 должен запуститься макрос (ниже приведенный) и выдать сообщение.

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim KeyCells As Range

    ' The variable KeyCells contains the cells that will
    ' cause an alert when they are changed.
    Set KeyCells = Range("A1:C10")
    
    If Not Application.Intersect(KeyCells, Range(Target.Address)) _
           Is Nothing Then

        ' Display a message when one of the designated cells has been 
        ' changed.
        ' Place your code here.
        MsgBox "Cell " & Target.Address & " has changed."
       
    End If
End Sub

Сохраняю все, в таблице изменяю ячейку A1 или любую другую из диапазона A1:C10 - ничего не происходит. Сообщения вида Cell $A$1 has changed не появляется. Макросы разрешены все. 

Что и где включить?

Microsoft 365 и Office | Excel | Для дома | Windows
Microsoft 365 и Office | Excel | Для дома | Windows

Семейство программного обеспечения Майкрософт для работы с электронными таблицами, оснащенное инструментами для анализа, построения диаграмм и обмена данными.

Заблокированный вопрос. Этот вопрос был перенесен из сообщества службы поддержки Майкрософт. Вы можете проголосовать о его полезности, но не можете добавлять комментарии или ответы, а также подписаться на этот вопрос.

Комментариев: 0 Без комментариев
Ответ, принятый автором вопроса
Анонимные
2016-09-08T10:08:09+00:00

Правильнее сказать так, данный код макроса, должен быть введён в окноWorksheet.

Этот ответ помог вам?

Комментариев: 0 Без комментариев

Дополнительные ответы: 13

Сортировать по: Наиболее полезные
  1. Анонимные
    2016-09-07T09:29:21+00:00

    Начните с внимательного изучения статьи "Начало работы с VBA в Excel 2010".

    Проверьте рабочий файл-пример Excel 2013.

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  2. Анонимные
    2016-09-07T06:40:34+00:00

    Гугл на запрос "excel 2016 how to run a macro when cell changes" выдает именно эту статью, и другие ссылки, датированные 14 и более ранними годами. Вот решение 14 года - не работает:

    https://www.linkedin.com/pulse/20140623100408-92734594-how-to-execute-excel-vba-macro-on-change-of-specific-cell-in-excel-sheet

    How to execute excel VBA macro on change of specific cell in excel sheet ?

    Please follow the below steps to execute the task -

    1. We need to go to Excel VBA editor by pressing ALT + F11
    2. Double click on sheet which contains our target cell e.g. Sheet1
    3. Add the below code to the sheet

    Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address = "$E$3" Then

    Call Macro1

    End If

    End Sub

    1. If any value in cell E3 of Sheet1 is updated or changed the Macro1 will be executed
    2. Insert new module and Add the below code to with name Macro1

    Sub Macro1()

    MsgBox "The value entered in Range E3 is " & Range("E3").Value

    End Sub

    1. Now try changing the value in cell E3 of Sheet1, the Macro1 will be executed and you will get a messagebox pop-up window

    Done....

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  3. Анонимные
    2016-09-07T06:23:12+00:00

    Намекните, как это сделать. Или укажите место, где эта задача уже решена.

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  4. Анонимные
    2016-09-07T03:23:23+00:00

    По данной вами ссылке, макрос для программ, цитата: "Информация в данной статье относится к следующим продуктам. Microsoft Office Excel 2007, Microsoft Excel 2002 Standard Edition, Microsoft Excel 2000 Standard Edition".

    Приведите макрос к формату Excel 2016.

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев