Внедрить и выполнить код Excel VBA в электронную таблицу, полученную из внешнего источника - PullRequest
2 голосов
/ 16 февраля 2012

Я хотел бы программно (в vbscript или командной строке или что-то еще) внедрить код VBA в рабочую книгу, полученную с FTP-сайта, а затем выполнить макрос в книге. Все автоматизировано. Нет взаимодействия с пользователем.

У меня есть код VBA, определенный в текстовом файле.

1 Ответ

2 голосов
/ 16 февраля 2012

У меня еще не было возможности попробовать это, но я думаю, что это сделает то, что мне нужно.

Set objExcel = CreateObject("Excel.Application") 
objExcel.Visible = True 
objExcel.DisplayAlerts = False 
Set  objWorkbook = objExcel.Workbooks.Open("C:\scripts\test.xls") 
   Set xlmodule = objworkbook.VBProject.VBComponents.Add(1)  
   strCode = _ 
   "sub test()" & vbCr & _ 
   "   msgbox ""Inside the macro"" " & vbCr & _ 
   "end sub" 
   xlmodule.CodeModule.AddFromString strCode 
objWorkbook.SaveAs "c:\scripts\test.xls" 
objExcel.Quit 
...