【问题标题】:Excel Macro in Internet Explorer....can't runInternet Explorer 中的 Excel 宏....无法运行
【发布时间】:2011-01-14 21:41:03
【问题描述】:

我创建了一个 Excel 2003 (.xls) 文件(使用 VBA 创建的宏)。 Excel 文件受到保护并具有隐藏的工作表。当我尝试在 Internet Explorer 中运行 Excel 宏时,我收到一条错误消息“对象 _Global 中的类“表格”的方法失败”。宏在 Excel 中运行良好。

我猜 IE 不会访问 Excel 工作簿中的工作表(隐藏或其他)。

有没有办法在我的 Excel VBA 代码中声明“表格”或“工作表”变量,以便 Excel 宏也可以在 IE 窗口中运行?
有没有办法解决这个问题?
我必须在 IE 中运行宏。

【问题讨论】:

  • 我认为问题出在你的代码上,你能发一下吗?
  • 欧文,我可以通过电子邮件发送给你。我编写的代码,即使基本有很多代码行。我创建了一个包含大约 25-30 个文本框和 4 个列表框的用户表单。文本框是根据对列表框项目的选择来填充的。剩余的文本框使用 excel 函数“vlookup”填充。示例: v = Application.WorksheetFunction.VLookup(-6, Sheets("Hose_Blk_mtrl").Range("H5:L12"), 5, False) 用于填充文本框。 “Hose_Blk_mtrl”工作表隐藏在工作簿中。我不知道我是否错过了声明什么。同样,宏在 excel 中运行良好。
  • 我认为这里不鼓励使用电子邮件代码。它使您的代码在从 excel 运行时可以工作,如果您正在创建一个 IE 无法处理的新对象,那么它将引发错误。如果您可以只发布一些代码示例,它可能会让我更好地了解问题可能是什么。只需选择一些不同的区域并先发布即可。
  • 欧文,我按照你的要求从我的每个模块中发布了几行。对于用户窗体: Private Sub UserForm_Initialize() ListBox1.AddItem ("XT3") ListBox1.AddItem ("XT5ToughGuard") CommandButton1.Enabled = False End Sub
  • "a" 是用户在列表框中选择的项目。 If a = "XT5" Then Select Case t Case "-12" v = Application.WorksheetFunction.VLookup(-12, Sheets("Hose_Blk_mtrl").Range("O8:P12"), 2, False) Case "-16 " v = Application.WorksheetFunction.VLookup(-16, Sheets("Hose_Blk_mtrl").Range("O8:P12"), 2, False) Case Else 'result_else End Select Call textbox_clear End If

标签: excel internet-explorer vba


【解决方案1】:

您可以提供您的 Excel 文件以供下载。这样每个用户都可以在他/她自己的机器上运行它。只需在网页上提供指向其位置的链接,用户就可以决定立即下载或运行。自然,用户所做的任何修改都不会回流到源代码中。

【讨论】:

    【解决方案2】:

    我发现了我的问题所在。 在 Internet Explorer 中打开 Excel 文件时,必须取消隐藏并选择正在访问的工作表

    就我而言: Application.ThisWorkbook.Sheets("Hose_Blk_mtrl").Visible = True Application.ThisWorkbook.Sheets("Hose_Blk_mtrl").Select

    另外,工作簿应该是“UnProtected”,这样上面两行代码就不会产生任何错误。 工作表可以在代码执行后再次隐藏

    Application.ThisWorkbook.Sheets("Hose_Blk_mtrl").Visible = False

    因此,Internet Explorer 可以托管带有内置宏的 excel 文件。

    -里士

    【讨论】:

      【解决方案3】:

      我不明白你在做什么。 Excel 宏仅在 Excel 上运行。可能是您下载了 Excel 文件,但宏没有运行?如果您需要 IE 的宏,[检查此][1]

      [1]:http://download.cnet.com/iMacros-for-Internet-Explorer/3000-12512_4-10586882.html/"检查这个"

      【讨论】:

      • 可以通过 IE 托管和查看 Excel 工作簿。 support.microsoft.com/kb/164384
      • 我正在尝试在 Internet Explorer 窗口(嵌入式)中运行 Microsoft Excel 文件。这是供多人通过 Intranet 使用的。
      • 我想我一开始误解了您的意图,您不能托管具有宏功能的 Excel 电子表格。当您将文件另存为 htm 页面时,所有的宏都会被删除。
      • 好吧...我希望听到不同的声音。非常感谢您的宝贵时间,欧文。
      猜你喜欢
      • 2014-06-12
      • 1970-01-01
      • 1970-01-01
      • 2017-09-14
      • 2015-08-07
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多