Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.04.2011, 19:33   #1
katrina-n
Пользователь
 
Регистрация: 29.11.2009
Сообщений: 51
По умолчанию макрос поиск решения

Здравствуйте!

прошу помощи. необходимо запустить макрос excel из access для дальнейшего экспорта решения в access. использую такой код vba:

1. Private Sub Кнопка26_Click()
DoCmd.OpenQuery "Экспорт_Лома"
Dim oWbk As Workbook
Set oWbk = Workbooks.Open("C:\Users\Ека\Deskto p\Домашная база\бд.xls")
oWbk.Application.OnTime Now + TimeValue("00:00:15"), "Оптимизация_шихты"
oWbk.Close SaveChanges:=True
End Sub

Здесь сначала записи из таблиц access экспортируются в excel, затем открывается файл бд.xls, в который эксп-ся данные, и выполняется макрос на поиск решения.затем файл закрывается.

В этом случае excel выводит сообщение о том, что макрос не найден.

2. Private Sub Кнопка26_Click()
DoCmd.OpenQuery "Экспорт_Лома"
Dim oWbk As Workbook
Set oWbk = Workbooks.Open("C:\Users\Ека\Deskto p\Домашная база\бд.xls")
oWbk.Application.OnTime Now + TimeValue("00:00:15"), "Оптимизация_шихты"
End Sub

тот же самый код, но без закрытия книги. Excel пишет: "непредвиденная ошибка или достигнут предел допустимой памяти".


P.S. если запустить бд.xls и выполнить этот макрос, он работает корректно.


Заранее спасибо за помощь.
katrina-n вне форума Ответить с цитированием
Старый 01.04.2011, 20:15   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Цитата:
"непредвиденная ошибка или достигнут предел допустимой памяти"
Эту ошибку вы не поборите.Если определенное время не отвечает объект-ошибка
.По опыту работы Excel - Acad
У вас задержка запуска макроса+время расчетов
А не проще запустить Excel ,загрузить данные,обсчитать,выгрузить обратно
Анализ,обработка данных Недорого

Последний раз редактировалось doober; 01.04.2011 в 20:17.
doober вне форума Ответить с цитированием
Старый 01.04.2011, 21:56   #3
katrina-n
Пользователь
 
Регистрация: 29.11.2009
Сообщений: 51
По умолчанию

Цитата:
У вас задержка запуска макроса+время расчетов
задержка макроса намеренная, вследствие того, что данный макрос некорректно работает при мгновенном его подключении после открытия книги.

Цитата:
А не проще запустить Excel ,загрузить данные,обсчитать,выгрузить обратно
что вы имеете в виду? вручную?

Цитата:
Эту ошибку вы не поборите.Если определенное время не отвечает объект-ошибка
.По опыту работы Excel - Acad
Если вас не затруднит, можно поподробнее?
katrina-n вне форума Ответить с цитированием
Старый 03.04.2011, 20:32   #4
katrina-n
Пользователь
 
Регистрация: 29.11.2009
Сообщений: 51
По умолчанию

Решила проблему. если кому понадобится, вот код:

Private Sub Кнопка26_Click()
DoCmd.OpenQuery "Экспорт_Лома"
Dim oWbk As Workbook
Set oWbk = Workbooks.Open("C:\Users\Ека\Deskto p\Домашная база\бд.xls")
oWbk.Application.Run "Оптимизация_шихты"
oWbk.Close SaveChanges:=True
katrina-n вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
макрос для решения квадратных уравнений (перемещено из раздела Excel) sashkkk Помощь студентам 3 22.09.2010 23:06
Поиск решения Giulietta Microsoft Office Excel 15 05.05.2009 13:58
Нужен Макрос, для решения конкретной задачи IREN_27 Microsoft Office Excel 5 23.04.2009 12:42
Поиск решения tipok Microsoft Office Excel 6 16.02.2009 10:46