excel - 如何在用户窗体的 Web 浏览器控件中加载嵌入对象?
问题描述
我正在尝试在用户窗体的 webbrowser 控件中加载 .gif 图像。我可以从 Code1 中看到的正常路径导入 .gif,但我想导航到嵌入的 .gif,即“对象 6”。我该怎么做?我尝试了 Code2,但不能。谢谢
代码1:
Private Sub UserForm_Initialize()
Me.WebBrowser1.Navigate2 "C:\Pictures\Splash.gif"
End Sub
代码2
Private Sub UserForm_Initialize()
Me.WebBrowser1.Navigate2 OLEObjects("Object 6")
End Sub
解决方案
如果您的 gif 不是太大,您可以尝试将其转换为数据 uri:
https://ezgif.com/image-to-datauri
将转换后的图像作为文本存储在工作表单元格中,然后您可以执行以下操作:
Private Sub UserForm_Activate()
With Me.WebBrowser1
.Navigate "about:blank"
While .ReadyState <> 4 Or .Busy: DoEvents: Wend
.Document.body.innerhtml = Sheet4.Range("A1").Value
End With
End Sub
经过测试并为我工作。
有关 datauri 限制的一些信息:数据协议 URL 大小限制
您可以在一个单元格中存储的最大值为 32k 个字符,但您可以将一个较大的字符串拆分为多个单元格。
推荐阅读
- c# - WPF 无法在 Listview WPF 中滚动 ItemsControl
- mysql - Mysql工作台创建函数
- laravel - 具有非默认primaryKey的雄辩关系(belongsTo,hasMany)
- upload - 将 txt 文件上传到 hyperledger composer 并将它们与资产相关联
- prolog - Prolog - 如何进行循环排列
- spring-boot - 在运行时使用 Spring Boot Actuator 刷新端点刷新 Spring Redis 缓存管理器 Bean
- angular - Angular/RxJS:即使发生错误,也要保持间隔运行
- c# - 如何将多个资源文件编译成一个dll
- iis-7 - 动态角度基础href
- java - 使用 Apache POI 编写新的 excel 文件时出现异常