2010-05-18 54 views
1

我正在使用VSTO創建Excel加載項。Excel中的名稱值對象模型

我的計劃是將excel工作簿中的對象序列化爲字符串,並將這些字符串指定爲工作簿中的名稱值。

但是,當我調用API函數添加新名稱時,COM庫中出現了一個神祕的異常。

更確切地說,我打電話

_app.ActiveWorkbook.Names.Add(name, value, true, 
      Type.Missing, Type.Missing, Type.Missing, Type.Missing, 
      Type.Missing, Type.Missing, Type.Missing, Type.Missing); 

其中

name = "an_object" 

value = "TestTemplate|'Sheet1'!$A$1| 1Cube=(0,1):(1,2)| 2EntryNumber=(1,1):(2,2)| 3Description=(2,1):(3,2)| 4Group=(4,1):(5,2)| 5Repost=(3,1):(4,2)| 6Debit=(13,3):(16,4)| 7Credit=(13,2):(16,3)|Company=(6,1):(7,2)|Company Partner=(7,1):(8,2)|Time Monthly=(8,1):(9,2)|Currency=(9,1):(10,2)|Version=(10,1):(11,2)|Department=(13,0):(16,1)|Account=(13,1):(16,2)|" 

一個假設是,value字符串沒有資格作爲可存儲一個字符串在一個名字(非法字符,太長等),但我找不到任何文件abou這些限制是什麼。

有沒有人知道這裏出了什麼問題?

錯誤信息,萬一有人需要它,是Exception from HRESULT: 0x800A03EC

非常感謝。

+0

做下面的回答你的問題? – 2010-06-01 06:49:17

回答

0

任何地方仍然沒有文檔,但一些試驗和錯誤表明我的序列化對象太長。

0

您是否試過在ref中發送參數?例如...ref name, ref value, ...

相關問題