我想將下拉列表添加到使用c#的範圍。C#excel數據驗證下拉列表throwserror
這是我迄今爲止所做的。
Worksheet ws = PPTAddIn.thisAddin2Obj.Application.ActiveWorkbook.ActiveSheet;
ws.get_Range("a1").Validation.Delete();
ws.get_Range("a1").Validation.InCellDropdown = true;
ws.get_Range("a1").Validation.IgnoreBlank = true;
ws.get_Range("a1").Validation.Add(XlDVType.xlValidateList, XlDVAlertStyle.xlValidAlertWarning, "opt1,opt2,opt3", Missing.Value);
在它下面拋出異常
從HRESULT異常代碼第三行:0x800A03EC
這是堆棧跟蹤
在System.RuntimeType.ForwardCallToInvokeMember(字符串成員名稱,的BindingFlags標記,對象目標,Int32 [] aWrapperTypes,MessageData & msgData) at Microsoft.Office.Interop.Excel.Validation.set_InCellDropdown(Boolean) at MS.ProductionPlanningTool.Excel.Ribbon_PPT.ribbon_signin_Click(Object sender,RibbonControlEventArgs e)in D:\ MidasCloud \ CloudTFS \ ProductionPlanning \ MSP2 \ MS.ProductionPlanningTool.Excel \ UI \ Ribbon_PPT.cs:line 1328 at Microsoft.Office。 Tools.Ribbon.RibbonPropertyStorage.ControlActionRaise(IRibbonControl control) at Microsoft.Office.Tools.Ribbon.RibbonPropertyStorage.ButtonClickCallback(RibbonComponentImpl component,Object [] args) at Microsoft.Office.Tools.Ribbon.RibbonManagerImpl.Invoke(RibbonComponentCallback callback,對象[] args) at Microsoft.Office.Tools.Ribbon.RibbonMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,Object [] parameters,CultureInfo culture) at Microsoft.Office.Tools.Ribbon.RibbonManagerImpl.System。 Reflection.IReflect.InvokeMember(String name,BindingFlags invokeAtt r,Binder binder,Object target,Object [] args,ParameterModifier []修飾符,CultureInfo culture,String [] namedParameters)
我不能現在檢查,如果這是正確的,但對如何獲得VBA代碼作爲指導建議+1。 OP,許多VBA開發人員爲我們已經忘記的對象模型的一部分做了這些工作。這是一個體面的起點修正... – MacroMarc
我試過......但它仍然是相同的...... –
@CharithLankathilake,看到我編輯的信息。 – TnTinMn