Страницы: 1
RSS
Как преобразовать макрос, чтобы считался на каждой итерации?
 
Здравствуйте.  
Подскажите, пожалуйста: я прописал в модуле (макрос MS Excel) необходимые преобразования 20 переменных. Теперь мне требуется вывести новые значения переменных в 20 разных ячеек. При этом необходимо использовать итерационный (около 100 итераций) пересчет листа. Нужно, чтобы на каждой итерации автоматически в соответствии с процедурой, описанной в макросе, производились преобразования этих 20 переменных и каждую же итерацию выводились данные в те самые 20 ячеек.  
Поскольку неприемлем ручной вызов макроса при каждой итерации, то как мне оформить макрос, чтобы он выполнял свою задачу? Еще одна проблема - это то, что, насколько я знаю, пользовательская функция не может изменять содержимое ячеек, отличных от той, в которой она вызвана. Подскажите, пожалуйста, как быть.
 
Если под итерацией понимается пересчет формул на листе или в книге, то уже написанный Вами макрос нужно вызывать с помощью процедур-обработчиков событий Worksheet_Calculate или Workbook_SheetCalculate (создаются в модуле листа или книги).
 
{quote}{login=Получайник}{date=19.10.2007 09:02}{thema=}{post}Еще одна проблема - это то, что, насколько я знаю, пользовательская функция не может изменять содержимое ячеек, отличных от той, в которой она вызвана. Подскажите, пожалуйста, как быть.{/post}{/quote}  
для макроса таких проблем нет - он может изменить не только содержимое ЛЮБЫХ ячеек в открытых книгах, но и добавлять/удалять строки/столбцы, открывать, закрывать книги, что угодно.. разве что кофе не варит ;-)
 
{quote}{login=}{date=19.10.2007 10:45}{thema=}{post}Если под итерацией понимается пересчет формул на листе или в книге, то уже написанный Вами макрос нужно вызывать с помощью процедур-обработчиков событий Worksheet_Calculate или Workbook_SheetCalculate (создаются в модуле листа или книги).{/post}{/quote}  
 
Да, имеется в виду пересчет формул. Спасибо. Попробую воспользоваться этими процедурами.  
 
{quote}{login=}{date=20.10.2007 04:30}{thema=}{post} для макроса таких проблем нет - он может изменить не только содержимое ЛЮБЫХ ячеек в открытых книгах, но и добавлять/удалять строки/столбцы, открывать, закрывать книги, что угодно.. разве что кофе не варит ;-){/post}{/quote}  
 
Даже в случае выше упомянутых автоматических пересчетов листов без необходимости на каждой итерации вызывать макрос в ручную?
 
Прошу прощения. В предыдущем посте в цитату затесался мой ответ с благодарностью, а исправить возможности нет.
Страницы: 1
Читают тему
Наверх