Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel VSTO加载项VB.net用户控件_Excel_Vb.net_User Controls_Vsto - Fatal编程技术网

Excel VSTO加载项VB.net用户控件

Excel VSTO加载项VB.net用户控件,excel,vb.net,user-controls,vsto,Excel,Vb.net,User Controls,Vsto,在VB.net中编码 自定义用户控件+互操作-Excel加载项 我一直在尝试为几个表单复制一个参照编辑框 (参照编辑:控件以选择输入框中的范围) 我会使用inputbox,但不实用,因为我只想使用一种形式,大约15种 我成功地将自定义控件添加到表单中,并尝试了按钮的行为,但在尝试将其绑定到excel时,我感到惊讶!我得到System.NullReferenceException:“referencea objeto no establecida como instancea de un obje

在VB.net中编码

自定义用户控件+互操作-Excel加载项

我一直在尝试为几个表单复制一个参照编辑框

(参照编辑:控件以选择输入框中的范围)

我会使用inputbox,但不实用,因为我只想使用一种形式,大约15种

我成功地将自定义控件添加到表单中,并尝试了按钮的行为,但在尝试将其绑定到excel时,我感到惊讶!我得到System.NullReferenceException:“referencea objeto no establecida como instancea de un objeto.”引用活动工作簿

看起来像Excel。应用程序实际上不适用于用户控件

    _xlapp = New Excel.Application
    Xlwb = _xlapp.ActiveWorkbook 'Fires the Exception
    XlAsh = Xlwb.ActiveSheet
我试着通过marshall找到目标

     Dim _xlapp=Excel.Application
    _xlapp=ctype(GetObject("Excel.Application"),Excel.Application)
     Xlwb = _xlapp.ActiveWorkbook
     XlAsh = Xlwb.ActiveSheet
而且是一样的

我还尝试删除Usercontrol项目中的refereces(尝试过),以便它可能绑定到Addin活动实例

我不太确定互操作在控制级别的行为


有什么想法吗?

您不需要创建excel应用程序的新实例,因为您已经有了一个实例,加载项正在运行。您需要使用
Dim xlApp As Excel.Application=Globals.ThisAddIn.Application

相反。

这将获取加载加载项的应用程序对象,您将能够获取它的所有方法和属性(如
xlApp.ActiveSheet
xlApp.ActiveWorkbook
)。

没有活动工作簿。你能写下如果你这样做得到的结果吗?另外,如果您想确保存在活动工作簿,请执行应用程序工作簿(1)。激活如果它有效,我必须将其包括在解决方案中,但它完成了建议!!!!!谢谢!!!