【问题标题】:Change Feature_Browser_Emulation in VBA Excel for Internet Explorer在 Internet Explorer 的 VBA Excel 中更改 Feature_Browser_Emulation
【发布时间】:2021-12-24 04:43:27
【问题描述】:

我一直在谷歌搜索如何使用 VBA 为我的 Internet Explorer 设置 Feature_Browser_Emulation,但大多数情况下我发现 VB.NET 和 VBA 以外的其他语言。任何人都可以帮助我使用 VBA 的语法吗?提前致谢。这是关于自动化谷歌地图的,谷歌的建议是做这个 Feature_Browser_Emulation,但大多数代码不在 VBA 中。我只想删除 Google 发出的警告消息“Google Maps API 不支持此浏览器”——类似的东西。

【问题讨论】:

  • 为什么您希望以编程方式更改注册表而不是在当前 IE 实例的会话级别设置仿真模式?
  • @QHarr 因为该应用程序要在具有不同 IE 版本的不同计算机上运行......根据我的理解,这是我必须采取的最后手段,因为元标记方法没有已经不行了。请原谅,但是注册表方法和会话级别 1 有什么区别?可以分享一下吗?
  • 你有类似的经历吗? stackoverflow.com/questions/49501406/…
  • @Qharr 感谢您提供此链接。我将尝试对此进行测试。这更接近我正在寻找的东西,也许这可能是它,谁知道?如果它对我有用,我会回复你。
  • @Yu Zhou 感谢您和 Qharr。正是 Qharr 的链接将我带到了 VBA 的 RegWrite 语法。无论如何,我需要的不仅仅是 IE 自动化,因为我必须遵循现有的类模块和 vbscripts 来自动化 Google Maps。但这暂时没关系。

标签: excel vba internet-explorer registry regedit


【解决方案1】:

至少对于我的情况,我或多或少找到了答案。根据下面的链接,模拟 Edge 的值只是 0(零)或任何不属于旧版本 IE 的值。至少它在我的情况下有效。所以我已经成功删除了错误消息“Google Maps API 不支持此浏览器”。但是,必须关闭并重新打开 Excel 才能使用。

https://www.devhut.net/everything-you-never-wanted-to-know-about-the-access-webbrowser-control/

    Dim obj_Shell as Object
    Set obj_Shell = CreateObject("wscript.shell")
    
    obj_Shell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Internet 
    Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION\EXCEL.EXE", 0, 
    "REG_DWORD"

【讨论】:

  • 感谢您发布此问题的解决方案。您可以将您的答案标记为已接受的答案。它可以在未来帮助其他社区成员解决类似的问题。感谢您的理解。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-13
  • 2020-03-18
  • 2017-07-02
  • 2012-05-30
  • 2020-01-26
相关资源
最近更新 更多