![]() |
|
Модераторы: mihanik |
![]()
|
|
| VitalyP |
|
|||
![]() Новичок Профиль Группа: Awaiting Authorisation Сообщений: 42 Регистрация: 24.8.2011 Репутация: нет Всего: нет |
Доброго времени суток всем!
Задача такая: перед автосохранением книги Excel необходимо выполнить макрос. Пытался решить таким образом:
При сохранении вручную - выполняет, автоматически - нет. Видимо событие BeforeSave - к автосохранению не относится, а про "BeforeAutoSave" не могу найти. Спасибо! Это сообщение отредактировал(а) VitalyP - 15.12.2011, 11:36 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
Думаю, что поскольку AutoSave - это операция уровня Excel.Application, а не Workbook, то и обработчики событий книги тебе не помощники...
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| VitalyP |
|
|||
![]() Новичок Профиль Группа: Awaiting Authorisation Сообщений: 42 Регистрация: 24.8.2011 Репутация: нет Всего: нет |
Я так понимаю, мне нужно событие приложения, типа "Application_AutoSave"?
Ну допустим это скорее всего лишнее. К этому я пришел от задачи: выполнять макрос каждые 15 минут (делаю запросы из БД для обновления содержимого). Это сообщение отредактировал(а) VitalyP - 15.12.2011, 13:08 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
А для решения ЭТОЙ задачи следует использовать совершенно иные средства!!! В меню "Данные" есть пункт "Импорт внешних данных", например... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| VitalyP |
|
|||
![]() Новичок Профиль Группа: Awaiting Authorisation Сообщений: 42 Регистрация: 24.8.2011 Репутация: нет Всего: нет |
Akina, долго рассказывать, но так к сожалению не получиться... Вообщем там своеобразные запросы, и данные представлены в нестандартном виде...
Проблема в следующем: есть макрос (рабочий), сейчас запускается по нажатию кнопки. Мне надо запускать его через каждые 15 минут (например). |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
Используйте Application.OnTime
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| VitalyP |
|
||||
![]() Новичок Профиль Группа: Awaiting Authorisation Сообщений: 42 Регистрация: 24.8.2011 Репутация: нет Всего: нет |
Akina, согласен. Но, не затруднит Вас написать как будет выглядеть весь код, и где он должен распологаться?
Я просто не понимаю следующего:
когда должен запускаться? Т.е. он выполняется постоянно? И кстати "Сделать чё-нить" -
Так подойдет? |
||||
|
|||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
Нет, один раз. Фактически он шедулится на однократное исполнение в заданный кол времени. Первый раз - в Auto_Open, а далее его метод должен шедулить следующий запуск. Чем спрашивать - проще попробовать. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| VitalyP |
|
||||||
![]() Новичок Профиль Группа: Awaiting Authorisation Сообщений: 42 Регистрация: 24.8.2011 Репутация: нет Всего: нет |
Тут ругается на "'Поручения со структурой.xlsm'!Контрольсроков_Кнопка3_Щелчок", говорит Expected: End of statement при компиляции. Хотя эту строку:
мне VBA сам написал в записи макроса.
Таким образом компилируется, но ничего не произошло... Это сообщение отредактировал(а) VitalyP - 16.12.2011, 08:12 |
||||||
|
|||||||
| dorogoyIV |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1503 Регистрация: 26.3.2007 Репутация: 4 Всего: 46 |
autosave
только вот всю память съедает :( (в диспетчере задач видно) Присоединённый файл ( Кол-во скачиваний: 2 )
_____1.rar 10,93 Kb |
|||
|
||||
| VitalyP |
|
||||
![]() Новичок Профиль Группа: Awaiting Authorisation Сообщений: 42 Регистрация: 24.8.2011 Репутация: нет Всего: нет |
dorogoyIV, спасибо!
Сейчас посмотрю, как это будет в моём случае. Ну, я так понял, что
После открытия входит в бесконечный цикл. Для меня это не подойдет. Нужно чтобы выполнялись и другие макросы. Есть идея одна, сейчас попробую и отпишусь. Это сообщение отредактировал(а) VitalyP - 16.12.2011, 11:54 |
||||
|
|||||
| VitalyP |
|
||||
![]() Новичок Профиль Группа: Awaiting Authorisation Сообщений: 42 Регистрация: 24.8.2011 Репутация: нет Всего: нет |
Вот чего мне не хватает теперь:
Надо сделать в цикле типа: "Делать пока не нажмут Esc". А потом запускать по нажатию кнопки. Насколько я понял:
или чего то подобного в VBA нету? |
||||
|
|||||
| Дмит |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 21.4.2006 Где: г.Волгоград Репутация: 8 Всего: 9 |
Макрос MyMacro будет запускаться каждые 15 сек.
Application.OnKey - посмотри и соответственно как остановить Application.OnTime всё есть в справке. |
||||
|
|||||
| VitalyP |
|
|||
![]() Новичок Профиль Группа: Awaiting Authorisation Сообщений: 42 Регистрация: 24.8.2011 Репутация: нет Всего: нет |
Всем спасибо!
|
|||
|
||||
![]()
|
| Правила форума "Программирование, связанное с MS Office" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще!
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование, связанное с MS Office | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |