Я создал надстройку автоматизации для Excel, реализованную в виде библиотеки классов C #, которая содержит оболочку UDF. (Я не использую VSTO)
Что я хотел бы сделать в своей UDF
1> получить адрес ячейки, где была введена формула;
2> установить формулу этой ячейки на одну из моих собственных;
Я ужевыполните пункт 1> следующим образом:
Microsoft.Office.Interop.Excel.Application excelApp = (Microsoft.Office.Interop.Excel.Application)Marshal.GetActiveObject("Excel.Application");
Microsoft.Office.Interop.Excel.Range target = (Microsoft.Office.Interop.Excel.Range)excelApp.get_Caller(System.Type.Missing);
string cellAddress = target.get_Address(Missing.Value, Missing.Value, Microsoft.Office.Interop.Excel.XlReferenceStyle.xlA1, Missing.Value, Missing.Value);
//Perform some operations based on address
//Assign a formula to my cell (This does not work !)
target.Formula ="=SUM(2,2)"
Это должно работать в соответствии с документацией MSDN от здесь .
Что я делаю неправильно?Есть ли другой способ установить формулу ячейки?
Спасибо,