2012-02-15 107 views
2

我想以編程方式(在vbscript或命令行或其他方式)將VBA代碼注入到我從FTP站點獲得的工作簿中,然後在工作簿上執行該宏。全自動化。沒有用戶交互。將Excel VBA代碼注入到從外部源接收的電子表格中

我在文本文件中定義了VBA代碼。

+0

這個問題有點不清楚。你是否想要插入代碼的宏(比如在另一個工作簿或加載項中),或者你不知道如何訪問VBA編輯器(Windows上的Alt-F11)。 – 2012-02-15 21:25:21

+0

我有一個文本文件中定義的宏。我想逐步地(在VBScript或命令行或其他)注入宏到我從FTP站點獲得的工作簿,然後在工作簿上執行宏。全自動化。沒有用戶交互 – Joe 2012-02-15 21:32:14

+1

您是否需要執行一次宏(然後考慮使用VBScript自動執行任務),還是必須將它作爲不止一次執行的.xls的一部分(然後從[應用程序]開始您的研究。 VBE)。 – 2012-02-15 22:12:04

回答

2

還沒有機會嘗試這個,但我認爲這將做我所需要的。

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 
相關問題