VBA研究显示GIF动态图片
Posted 宋哥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBA研究显示GIF动态图片相关的知识,希望对你有一定的参考价值。
iamlaosong文
一个小需求,要求输入某个数字后显示一个鼓掌的动态图片。Excel是无法显示动态图片的,不过可以用浏览器控件显示动态图片。有两种方式,一是插入窗体,在窗体中插入浏览器控件;二是直接插入控件到工作表,然后控制其显示。
下面以直接插入到工作表为例,看看如何完成。
1、点击“开发工具”选项卡下面的“插入”,弹出菜单中点击“其它”图标,在弹出窗口中选择“Microsoft Web Browser”控件,点击“确定”按钮,如下图:
2、光标变成“十”字,在工作表上画一个矩形框,这就是用来显示GIF图片的方框,调整好位置后点击“开发工具”选项卡下面的“设计模式”,退出设计模式才会显示图片。
3、进入VBA编辑器,插入模块,输入下面代码:
Sub disp()
ActiveSheet.WebBrowser1.Visible = True
ActiveSheet.WebBrowser1.Navigate ThisWorkbook.Path & "\\掌声.gif"
End Sub
Sub undisp()
ActiveSheet.WebBrowser1.Visible = False
End Sub
4、双击“ThisWorkbook”,输入一下代码:
'检测工作表变化
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Column = 10 And Target.Row >= 4 And Target.Row <= 8 Then
If Target.Value = 0.27 Then
disp
Else
undisp
End If
Else
undisp
End If
End Sub
5、为了保证效果,按回车后单元格位置不变化,需要去掉移动勾选:
6、至此,工作完成,当指定单元格输入27%按回车后就会显示动态图片,点击其它单元格,图片关闭。点击指定区域的单元格,如果值为27%,也会显示图片,效果如下:
7、如要调整显示位置,需要点击“开发工具”选项卡下面的“设计模式”,进入设计模式就可以调整位置。
8、如果将图片换成带图片和声音的网页,估计效果会更好。
以上是关于VBA研究显示GIF动态图片的主要内容,如果未能解决你的问题,请参考以下文章