Семейство программного обеспечения Майкрософт для работы с электронными таблицами, оснащенное инструментами для анализа, построения диаграмм и обмена данными.
Правильнее сказать так, данный код макроса, должен быть введён в окноWorksheet.
Этот браузер больше не поддерживается.
Выполните обновление до Microsoft Edge, чтобы воспользоваться новейшими функциями, обновлениями для системы безопасности и технической поддержкой.
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 не появляется. Макросы разрешены все.
Что и где включить?
Семейство программного обеспечения Майкрософт для работы с электронными таблицами, оснащенное инструментами для анализа, построения диаграмм и обмена данными.
Заблокированный вопрос. Этот вопрос был перенесен из сообщества службы поддержки Майкрософт. Вы можете проголосовать о его полезности, но не можете добавлять комментарии или ответы, а также подписаться на этот вопрос.
Правильнее сказать так, данный код макроса, должен быть введён в окноWorksheet.
Начните с внимательного изучения статьи "Начало работы с VBA в Excel 2010".
Гугл на запрос "excel 2016 how to run a macro when cell changes" выдает именно эту статью, и другие ссылки, датированные 14 и более ранними годами. Вот решение 14 года - не работает:
How to execute excel VBA macro on change of specific cell in excel sheet ?
Please follow the below steps to execute the task -
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$E$3" Then
Call Macro1
End If
End Sub
Sub Macro1()
MsgBox "The value entered in Range E3 is " & Range("E3").Value
End Sub
Done....
Намекните, как это сделать. Или укажите место, где эта задача уже решена.
По данной вами ссылке, макрос для программ, цитата: "Информация в данной статье относится к следующим продуктам. Microsoft Office Excel 2007, Microsoft Excel 2002 Standard Edition, Microsoft Excel 2000 Standard Edition".
Приведите макрос к формату Excel 2016.