2009-09-01 156 views
0

我正在使用以下代碼使用VBA創建Excel對象。我正在使用Office 2003.我在經典ASP中運行以下代碼。錯誤在VBA中創建Excel對象

集myexcel =的CreateObject( 「Excel.Application」)

錯誤消息是,創建Excel對象所需的任何許可?

計算機 - 默認權限設置不允許使用CLSID {00024500-0000-0000-C000-000000000046}

EDIT1(使用LRPC)地址本地主機:

我有一個相關的問題在這裏,不勝感激,如果任何人都可以看看,

generating Excel file error

由於事先 喬治

+1

你想在哪個應用程序中創建Excel對象? 你在你的項目中設置了正確的參考嗎? – 2009-09-01 11:03:40

+0

你是什麼意思應用程序?我很困惑。我只是執行VBA。 – George2 2009-09-01 11:15:41

+0

我在傳統的ASP中運行它。那是你需要什麼信息? – George2 2009-09-01 11:31:28

回答

2

This article可能會感興趣的,它說:

微軟目前並不 建議,並且不支持, 自動化的Microsoft Office從任何無人值守, 非交互式客戶端應用程序或 組件 應用(包括ASP,ASP.NET, DCOM和NT服務),因爲Office在此 環境中運行時,Office 可能會出現不穩定行爲和/或 死鎖。

你不妨在mime typesHow to output an Excel *.xls file from classic ASP

看起來非常,非常粗略:

<% 
Response.ContentType = "application/vnd.ms-excel" 
%> 
<TABLE> 
<TR> 
<TD> 
<!-- Cell : A1 --> 
2 
</TD> 
</TR> 
<TR> 
<TD> 
<!-- Cell : A2 --> 
3 
</TD> 
</TR> 
<TR> 
<TD> 
<!-- Cell : A3 --> 
=SUM(A1:A2) 
</TD> 
</TR> 
</TABLE> 
+0

謝謝,但是我的問題的解決方案是什麼?我必須在ASP中使用Excep。 – George2 2009-09-01 12:55:09

+0

我真的需要訪問Excel對象才能生成Excel文件供下載,有什麼想法? – George2 2009-09-01 13:10:32

+1

我已經添加了一些註釋。您將在StackOverflow和其他地方找到關於此主題的更多信息。 – Fionnuala 2009-09-01 13:30:07

0

如果你想獲得它的工作,而不是實現一個更好的解決方案。

==================== 解決方法:

它是一種安全vunerability(但你說你必須只得到它的工作)... 但是, 您是否嘗試將IUSR和IWAM帳戶添加到有問題的COM +應用程序的本地激活和啓動權限中?

步驟:

  1. 開放Dcomcnfg中。EXE

  2. 打開組件服務>我的電腦> DCOM配置

  3. 搜索{00024500-0000-0000-C000-000000000046}

  4. 點擊右鍵屬性>轉到安全選項卡

  5. 在啓動/激活權限下,單擊自定義並編輯

  6. 確保管理員,交互式,服務和系統已添加(本地推出/僅行動)

  7. 它的經典ASP(在IIS 5或6我假設)所以嘗試機器IUSR和IWAM帳戶intially。

  8. 如果添加這些不起作用(本地操作和啓動),如果您有應用程序池,請嘗試添加用於應用程序池的帳戶(查找應用程序池的標識選項卡)。

  9. 點擊ok/ok/ok。

  10. 重新啓動IIS /應用程序池。