自动插入图片,选择单元格时,自动根据单元格内容插入批注图片
创作者俱乐部成员
⭐【案例描述】
小明刚刚接手仓库管理员工作,由于物品种类繁多,他很难快速将物品名称与实物相对应,导致工作效率低下。如果将物品图片全部插入到表格中,不但会破坏表格结构,还会使表格文件变得非常大,操作会非常卡。为解决这一问题,我们为他编写了一个JS宏,可以动态地将物品图片插入到所选单元格批注中,选择哪个物品,就显示哪个物品的图片,别的图片则自动删除,不占用表格空间,也不会出现卡顿的情况。
⭐【操作效果】
⭐【JSA代码】
按ALT+F11打开WPS宏编辑器,复制下方代码粘贴到编辑器中。
👉 | //添加批注图片,自定义函数,参数为单元格 function AddCommentImage(rg){ //获取图片路径 let f=ThisWorkbook.Path +'\\图片\\'+rg.Value2+'.jpg' if(Dir(f)){ //如果图片存在,就执行 rg.ClearComments() //先删除原有批注,否则无法添加 rg.AddComment() //添加批注 let sp=rg.Comment.Shape //将批注的图形对象赋值给sp sp.Height = 200 //设置图像高度 sp.Width = 300 //设置图像宽度 sp.Fill.UserPicture(f) //添加图片 } } //单元格事件,当鼠标点击单元格时执行 function Workbook_SheetSelectionChange(Sh, Target) { if(Target.Count>1){return;} //如果同时选择两个以上单元格,则退出程序 if(Target.Column==1&&Target.Row>1){ //当选择A列,且行数大于1时,执行 Columns('a').ClearComments() //删除A列所有批注,避免文件过导致卡顿 AddCommentImage(Target) //调用添加批注图片函数,参数为活动单元格 } } |
⭐【往期内容】
⭐【素材下载】
创作者俱乐部成员