3
我嘗試在C#應用程序的excel文件中運行vba腳本時出現問題。 我的代碼是:在Excel中運行vba腳本的C#
public void RunMacro(string path, string macro)
{
Excel.Application app = null;
Excel.Workbooks workbooks = null;
Excel.Workbook workbook = null;
app = new Excel.Application();
if (app == null)
return;
app.Visible = false;
ChangeCulture();
workbooks = app.Workbooks;
workbook = workbooks.Open(path, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);
LogWrapper.Debug("Run Macro start");
app.Run(macro, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing
, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing
, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing
, Type.Missing, Type.Missing, Type.Missing);
LogWrapper.Debug("Run macro finish");
workbook.Close(false, Type.Missing, Type.Missing);
app.Quit();
ReleaseObject(app);
ReleaseObject(workbook);
}
我點擊後的按鈕,在我的網頁瀏覽器中運行這個方法,瀏覽器一直工作(「等待本地主機...」)。我在Firebug中看不到任何請求。 我的LogWrapper只記錄第一個信息(「運行宏啓動」)。 在事件查看器中沒有任何有關此執行的信息。 在任務管理器進程中,EXCEL.EXE使用100%的處理器。 而我正在等待半小時的結果,仍然沒有任何結果。
當我將vba腳本名稱更改爲正在運行時出現錯誤,指出在excel文件中找不到vba腳本。 我的VBA腳本很簡單:
Sub start()
Range("A3").Select
ActiveCell.Value = "def"
Range("A4").Select
End Sub
有人知道我應該在哪裏搜索有關此問題的信息?
試試'app.Run(宏);' –
好的。問題在於宏觀內容。不能編輯單元格值,有人知道爲什麼? – dzzdr
你收到什麼異常? – etaiso