一键将图片批量插入Excel批注,鼠标悬停即预览
你是否经常需要管理大量产品图片、员工照片或证件扫描件?还在为Excel表格和图片文件之间的频繁切换而烦恼?
今天分享一个超级实用的Excel VBA脚本,让你一键将文件夹中的图片批量插入单元格批注,鼠标悬停即可预览,工作效率提升十倍!
核心代码展示
Sub 添加批注图片() Dim cell As Range, rng As Range Dim PicPath As String, PicFile As String Dim cmt As Comment ' 设置图片路径 PicPath = ThisWorkbook.Path & "\图片集\" ' 检查文件夹 If Dir(PicPath, vbDirectory) = "" Then MsgBox "图片文件夹不存在:" & vbCrLf & PicPath, vbExclamation Exit Sub End If ' 选择区域 On Error Resume Next Set rng = Application.InputBox("请选择包含图片名称的单元格区域", "选择区域", Type:=8) On Error GoTo 0 If rng Is Nothing Then Exit Sub Application.ScreenUpdating = False ' 遍历每个单元格 For Each cell In rng If Trim(cell.Value) <> "" Then PicFile = PicPath & Trim(cell.Value) & ".jpg" ' 检查图片是否存在 If Dir(PicFile) <> "" Then ' 删除旧批注 If Not cell.Comment Is Nothing Then cell.Comment.Delete ' 添加新批注 Set cmt = cell.AddComment cmt.Text "" ' 清空文本 ' 插入图片 cmt.Shape.Fill.UserPicture PicFile ' 设置批注大小 cmt.Shape.Width = 300 ' 宽度 cmt.Shape.Height = 200 ' 高度 ' 隐藏批注(鼠标悬停时显示) cmt.Visible = False End If End If Next cell Application.ScreenUpdating = True MsgBox "批注图片添加完成!", vbInformationEnd Sub
使用场景
使用指南
准备工作
- 2. 将图片放入该文件夹,命名为对应的单元格内容+
.jpg
运行脚本
使用提示
- • 图片格式:脚本默认查找
.jpg文件,如需其他格式可修改代码中的扩展名 - • 命名规范:图片名称必须与单元格内容完全一致(可去掉空格)
- • 批注大小:可根据需要调整代码中的宽度(Width)和高度(Height)值
- • 性能优化:处理大量图片时,脚本已关闭屏幕更新,确保运行流畅
总结
这个简单的VBA脚本解决了Excel中图片管理的痛点,将原本繁琐的手动操作自动化。无需复杂插件,无需额外软件,只需几行代码,就能实现专业的图片预览功能。
转发给需要的小伙伴,一起早下班!