Вниз
Скачать: CL | DM;

Возможно ли запустить в Excel макрос сформированный в Delphi?   Найти похожие ветки 

← →
Strimer ©   (2004-10-19 20:07) [0]

Возможно ли запустить в Excel макрос сформированный в  Delphi?

Excel.Run("SuperMacros"); - это запуск уже написанного в Excele макроса , а возможно запустить макроса текст, которого пишется в Delphi?


← →
bas ©   (2004-10-19 20:36) [1]

Если макрос сформировать в дельфине, а потом его добавить в эхель, а потом выполнить - то да точно. Сам пробовал. Если как-то по другому, то не знаю...


← →
Мирон ©   (2004-10-19 22:06) [2]

Strimer ©   (19.10.04 20:07)
Свою процедуру пишешь в DLL и вызываешь ее из VBA Excel.

что-то типа:

Private Declare Sub MyProcedure Lib "MY_DLL"

sub NewMacros
   MyProcedure
end sub


← →
jack128 ©   (2004-10-19 22:14) [3]

Strimer ©   (19.10.04 20:07)

ExcelApp.VBE.SelectedVBComponent.CodeModule.AddFromString(<текст макроса>);
Excel.Run(<имя макроса>);


← →
Мирон ©   (2004-10-19 22:43) [4]

jack128 ©   (19.10.04 22:14) [3]
Эт проще на Паскале отдельную процедуру сделать, чем ваять в дельфи макросы на VBA.


← →
jack128 ©   (2004-10-19 22:53) [5]

Мирон ©   (19.10.04 22:43) [4]
дельфи - компилятор/VBA - интерпритатор. Из этого все приемущества и недостатки идут. Но выполнение макроса (если ты обращаешься в методам Excel"a) быстрее, чем использование OLE из длл. К тому же менее подвержено глюкам..


← →
Мирон ©   (2004-10-19 23:02) [6]

jack128 ©   (19.10.04 22:53) [5]
Почти убедил.Если этот макрос сколь-нибудь велик - представляешь себе его отладку из Delphi? Тут больше подойдет вариант, предложенный автором.


← →
jack128 ©   (2004-10-19 23:07) [7]

Мирон ©   (19.10.04 23:02) [6]
представляешь себе его отладку из Delphi?

нет. не представляю ;-).  Его в VBA редакторе нужно отлаживать ;-)


← →
Мирон ©   (2004-10-19 23:11) [8]

jack128 ©   (19.10.04 23:07) [7]
Так я о чем и говорю: смысл писать в Паскале макросы на VBA, если проще это делать в самом Excele? Я вообще понял вопрос так: автор хочет для экселя писать макросы на Паскале. Поэтому и предложил [2].


← →
jack128 ©   (2004-10-19 23:18) [9]

Мирон ©   (19.10.04 23:11) [8]
смысл писать в Паскале макросы на VBA


в гибкости. Если вдруг одному какому то клиенту понадобится другая функциональность, то те нужно перекомпилировать программу - достаточно изменить скрипт и отослать клиенту(если скрипт храниться в файле например) Или из соображений скорости см [5]


← →
Мирон ©   (2004-10-19 23:28) [10]

jack128 ©   (19.10.04 23:18) [9]
"Соображения скорости" принимаю. А насчет гибкости... Пожалуй, не стоит начинать холи вор. :-) Пусть автор сам решает, что конкретно ему нужно.


← →
Strimer ©   (2004-10-20 14:59) [11]

спасибо за советы :-)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.021 c
1-1097594672
redlord
2004-10-12 19:24
2004.10.31
buf[0..2048]array of byte и buf array of bute;setlength(buf,204


1-1097609853
Павел
2004-10-12 23:37
2004.10.31
прицепить PopupMenu к DBGrid


1-1097831601
tria
2004-10-15 13:13
2004.10.31
Как картику из ImageList скопировать в Icon формы?


10-1053349703
From_X
2003-05-19 16:34
2004.10.31
Дайте хоть один пример СallBack-а на Corbe


14-1097217907
Aldor
2004-10-08 10:45
2004.10.31
uses в секциях implementation и interface




   Наверх