У меня есть проект: addin к Excel, написан на C# используя VSTO 2005.
На WorkSheet-е есть некий combobox, в него надо вставить значения и одно из них сделать selected.
На vba данный код работает (в combobox добавляются значения):
Dim sh As Worksheet
Set sh = ActiveWorkbook.Worksheets.Item(1)
sh.OLEObjects("ComboBoxX").Object.AddItem ("11sss11")
sh.OLEObjects("ComboBoxX").Object.AddItem ("22sss22")
Когда я пытаюсь тоже самое сделать в своем проекте на C# то данный код даже не компилируется:
Excel.Worksheet sheet = (Excel.Worksheet) wbk.Worksheets.get_Item(1);
sheet.OLEObjects("ComboBoxX").Object.AddItem("11ss s11"); — ругается на эту строчку: Error 3 'object' does not contain a definition for 'Object'
Вариант достучаться до combobox-а через shapes тоже не проходит:
int nCount = sheet.Shapes.Count;
for (int i = 1; i <= nCount; i++)
{
Excel.Shape shape = sheet.Shapes.Item(i);
if (shape.Type == Office.MsoShapeType.msoOLEControlObject)
{
shape.ControlFormat.AddItem("11sss11", 1);
}
}
В процессе выполнения валится exception: Member not found. (Exception from HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND))