分享

动态查看员工或商品的照片,这个方法也不错

 建发图书 2022-12-30 发布于广东
HI,大家好,我是星光。

好久不见,☆ㄟ( ・ө・ )ㄏ☆想你了。

这期给大家聊一下如何在Excel中动态查看员工或商品照片。关于这事,之前给大家分享了多种方法。

如果是单个照片,可以使用函数处理
◆点击图片获取相关教程▼

图片

动态显示员工照片的档案查询模版


如果是多个照片,可以将图片放到批注里。这样当鼠标滑过单元格,就可以看到他或她的照片了。

图片

点击图片获取相关教程


又或者干脆将图片保存到单元格中:

图片


……

不过,当需要查看图片的对象比较多时,后面两种方法,由于将大量图片保存到了工作簿中,会造成Excel体积偏大,运算效率低下等问题。

所以,今再给大家分享另外一个方式。

这种方式并不会将所有图片都储存到工作簿中,但当鼠标选取任意目标时,也可以看到相关图片。

图片

步骤1◆

将图片保存到当前工作簿所在的文件夹内。

图片

步骤2◆

选中目标工作表,在插入选项卡下,依次单击形状→文本框,在当前工作表绘制一个大小合你心意的框。在名称栏中将它的名称修改为图片

图片


步骤3◆

复制以下代码粘贴到目标工作表所在的VBE代码窗口:

图片

Private Sub Worksheet_SelectionChange(ByVal Target As Range) Me.Shapes('图片').Visible = msoFalse '隐藏图形 If Target.Rows.Count > 1 Then Exit Sub If Target.Columns.Count > 1 Then Exit Sub If Target.Column <> 1 Then Exit Sub Dim p$, f$ p = ThisWorkbook.Path & '/' f = Dir(p & Target.Value & '.*') '根据所选单元格查找对应图片 If f <> '' Then '如果存在同名称的图片 With Me.Shapes('图片') With .Fill .Visible = msoTrue .UserPicture p & f .TextureTile = msoFalse .RotateWithObject = msoTrue End With .TextFrame2.TextRange.Characters.Text = '' '清除文本 End With Else With Me.Shapes('图片') .Fill.Visible = msoFalse '取消图片填充 .TextFrame2.TextRange.Characters.Text = '查无图片' End With End If With Me.Shapes('图片') '设置可见和位置 .Visible = msoTrue .Left = Target.Offset(0, 1).Left .Top = Target.Top End WithEnd Sub

这个时候鼠标点击任意单元格,如果当前工作簿所在的文件夹内存在该单元格内容的图片,就会自动显示在单元格的右侧了。

打个响指,今天给大家分享的内容就这些,下载案例文件试一下吧。

案例文件下载百度网盘...

https://pan.baidu.com/s/1V_yVCQyf-bi31XR38BD-PQ?pwd=1234

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多