2009-03-04 39 views
1

我在C#.NET中創建了一個自動插件,併爲它提供了一個shim dll。 shim dll中有所有用戶定義的方法,它們調用.NET程序集中相應的 方法。 1.添加新形狀到工作表 2.將>>功能>> SUM自動化插件中的用戶自定義函數行爲不同Excel 2007

,我所面臨的問題與Excel 2007中

在Excel 2003中。函數參數對話框出現 3,點擊新插入的形狀,而不是細胞 注:什麼也沒有發生,並在 參數盒

現在,在Excel 2007中, 1.將自動輸入任何單元格值新形狀 2.公式功能區選項卡>>插入功能>> SUM。函數參數對話框 出現 3.點擊,現在會顯示一個錯誤對話框,新插入的形狀 注說:「你輸入 的公式包含一個錯誤」

此對話框出現了預定義的函數(SUM )。如果我從SUM的就地列表中選擇我的 函數,則不會顯示錯誤對話框,並且函數參數對話框會消失。該單元然後顯示錯誤 smarttag。

是否有需要將每個功能放入SHIM dll的東西? 就像屬性或者會顯示這個錯誤對話框的東西一樣。或者也許 該方法返回的一些特殊值表明參數 已生成錯誤。

在COM墊片定義的函數是這樣的:

STDMETHOD(GetArea)(MyExcelAddIn::Range *r, double *pRetVal) 
{ 
    return m_pMyUDF->GetArea(r, pRetVal); 
} 
+0

我猜你的函數將對象作爲參數,而不是像Range這樣的特定類型。是這樣嗎? – shahkalpesh 2009-03-04 07:43:55

回答

0

我聯繫了微軟,他們確認這是在Excel中產品中的錯誤。當我從他們得到它的時候,我會發布錯誤鏈接。

相關問題