【问题标题】:How do I load and excel addins in vb.net?如何在 vb.net 中加载和 excel 插件?
【发布时间】:2019-07-02 08:11:12
【问题描述】:

我必须在 VB.NET 中创建一个 excel 文件以通过 excel 加载项进行一些计算(如果您要问,不,在程序本身内重新创建加载项不是一种选择),我已经完成了一些研究,根据 microsoft.docs 网站,我必须使用我的应用程序变量(又名 appXl)并写 appXl.AddIns.Add([filename]),但每次都失败,再次根据 microsoft.docs 我应该打开工作簿。

我尝试使用appXl.AddIns2.Add([filename]),但它也失败了,我尝试了互联网上的各种解决方案,但似乎没有一个有效,我也尝试使用标题或目录,但它不起作用

代码: vb.net

Imports Microsoft.Office.Interop
Private appXl As Excel.Application
Private wbXl As Excel.Workbook
Private shXl As Excel.Worksheet
Private AddinXl As Excel.AddIn
Private dataDirectory As String = (String.Format("{0}\Data\", Environment.CurrentDirectory))

Private Sub Main_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  dataDirectory &= "AnimalFeed.xlsx"
  appXl = New Excel.Application
  wbXl = appXl.Workbooks.Open(dataDirectory)
  shXl = wbXl.Worksheets("solver")
  AddinXl = appXl.AddIns.Add("wba.xlam")
End Sub

它应该加载插件,然后能够在 vb.net 中使用它的所有功能,但调试停止到 AddinXl = appXl.AddIns.Add("wba.xlam") 行,它只是说 “AddIns 类的添加方法失败” em>。

【问题讨论】:

  • 也许您应该指定加载项的完整路径?
  • 已经试过了,不行
  • “wba.xlam”是已知 Excel 插件吗?即它在 Excel 的 Adin-In 对话框中列出?
  • 如果你的意思是如果我从选项中的 excel 打开它 > 加载项它可以工作,是的,我也尝试使用标题而不是文件名,但我没有运气
  • 我的意思是它当前是否列在对话框中(您不必添加它)。列出的加载项需要特殊处理(see this post。您应该将完整路径传递给Addins.Add 方法。一旦最终加载它,您还必须将AddIn.Installed 属性设置为True

标签: excel vb.net excel-addins


【解决方案1】:

您是否在参考资料中添加了 Excel?

很抱歉,由于我已经很久没有使用过 VB.net,所以我无法指导您完成此操作,但是为了使用 Excel 对象,您需要参考。

当你输入Excel时你会知道你是否添加了它,会出现可能的选项列表。

如果没有,先找Tools -> References,找Excel大概是微软下的。使用您的版本号(.Net 和 Excel)谷歌 vb.net 以获得准确的指南。

【讨论】:

  • 是的,我确实添加了它,否则程序会停在第一行,实际上这个程序只是对另一个已经工作的程序的修改,我只需要添加插件部分,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-19
  • 1970-01-01
  • 1970-01-01
  • 2022-11-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多