我正在使用 NetOffice 编辑 Excel 电子表格。如果我从 Excel 用户定义的函数调用代码,它不会让我编辑调用电子表格。
Excel.Application excelApplication = Excel.Application.GetActiveInstance();
Excel.Worksheet workSheet = (Excel.Worksheet) excelApplication.ActiveSheet;
Excel.Range cell = workSheet.Cells[2, 2];
object value = cell.Value; //works
cell.Value = 3; //Throws Exception
有没有一种解决方法可以让我做到这一点?
例外是
“System.Runtime.InteropServices.COMException (0x80004005):有关详细信息,请参阅内部异常。---> System.Reflection.TargetInvocationException:调用的目标已引发异常。---> System.Runtime。 InteropServices.COMException:来自 HRESULT 的异常:0x800A03EC --- 内部异常堆栈跟踪结束 --- 在 System.RuntimeType.InvokeDispMethod(字符串名称,BindingFlags invokeAttr,对象目标,对象 [] 参数,布尔 [] byrefModifiers,Int32 文化, String[] namedParameters) 在 System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] 修饰符, CultureInfo 文化, String[] namedParams) 在 System.Type.InvokeMember(String名称,BindingFlags invokeAttr,Binder binder,Object target,Object[] args,CultureInfo 文化)在 NetOffice.Invoker.PropertySet(COMObject comObject, String name, Object[] value) 在 NetOffice.Invoker.PropertySet(COMObject comObject, String name, Object[] value) 在 NetOffice.ExcelApi.Range.set_Value(Object value ) 在 ExcelExamplesCS45.Example01.RunExample() 在 \psf\home\Documents\Visual Studio 2013\Projects\Excel-REPL\Excel-REPL\Example01.cs:第 29 行 ClojureExcel.MainClass.Test() 在 \psf\home \Documents\Visual Studio 2013\Projects\Excel-REPL\Excel-REPL\MainClass.cs:line 310"第 29 行 ClojureExcel.MainClass.Test() 在 \psf\home\Documents\Visual Studio 2013\Projects\Excel-REPL\Excel-REPL\MainClass.cs:line 310"第 29 行 ClojureExcel.MainClass.Test() 在 \psf\home\Documents\Visual Studio 2013\Projects\Excel-REPL\Excel-REPL\MainClass.cs:line 310"