在表格中按名称批量插入对应图片

懒人办公
懒人办公

创作者俱乐部成员

【案例】

下图表格A列为货号,现在需要将“图片”文件夹中的图片批量插入到B列相应位置。

【操作效果】

【JSA代码】

具体代码如下,可按ALT+F11打开WPS宏编辑器,复制下面的代码粘贴到编辑器中。

function 批量插入图片(){

p = ThisWorkbook.Path + "/图片/" //图片文件夹

n = Range("a"+Rows.Count).End(3).Row //最后数据行号

for( i = 2 ;i<= n;i++){ //从第2行循环到最后一行

rg1 = Cells.Item(i, 1) //将第一列赋值给变量rg1(图片名)

rg2 = Cells.Item(i, 2) //将第二列赋值给变量rg2(图片位置)

f=p + rg1 + ".jpg" //图片路径

l=rg2.Left + 1 //图片单元格左边位置

t=rg2.Top + 1 //图片单元格上方位置

w=rg2.Width - 1 //图片宽度

h=rg2.Height - 1 //图片高度

if(Dir(f)){ //判断文件夹中图片是否存在

//插入图片

ActiveSheet.Shapes.AddPicture(f,1,1, l ,t , w, h)

}

}

}

function 批量删除图片()

{

for(sp of ActiveSheet.Shapes){ //遍历表格中的图片对象

sp.Delete() //删除图片

}

}

【素材下载】

https://kdocs.cn/l/ccWFTfvdgpOi

贵州省
浏览 5403
3
27
分享
27 +1
24
3 +1
全部评论 24
 
企业用户_1436961524
请A列产品名下,有多张图片,怎么按行导入呢?
· 广东省
回复
 
张丽萍
尝试了一下,昨天还可以,今天就不行,都找不到原因,怎么办
· 江西省
回复
 
思雨
很厉害!
· 河南省
回复
 
聚沙成塔
跟着大佬学技术
· 贵州省
回复
 
崔德灶
非常好的分享,受益匪浅
· 浙江省
回复
 
无所畏惧
跟着大佬少走弯路
· 浙江省
回复
 
unicorn
学习是一辈子的事情,一辈子可以创造收益❗改变学习方法,遇到困难,不退缩,努力找各种资源来学习,找了很多资料,终于在抖音里找到自己需要的东西,谢谢,抖主
· 四川省
回复
 
Badminton
跟着老大走,少走弯路
· 四川省
回复
 
WPS_1698649213
值得学习,急需学习。
· 西藏
回复
 
紫色
非常好用,挺实用的
· 天津
回复
 
轻描淡写
值得学习,非常有用
· 新疆
回复
 
M
跟着大佬!少走弯路!
· 贵州省
回复
 
糊涂
办公神器,方便很多1
· 浙江省
回复
 
Mr chen
跟着大佬,少走弯路
· 广东省
回复
 
这.也会过去
跟着大佬,少走弯路。
· 甘肃省
回复
 
张俊
张俊

WPS函数专家

关注大佬不迷路,跟着大佬学技术。
· 上海
回复
懒人办公
懒人办公

创作者俱乐部成员

张哥才是大佬
· 贵州省
1
回复
 
ice y
ice y

创作者俱乐部成员

学习打卡
· 四川省
回复
懒人办公
懒人办公

创作者俱乐部成员

相互学习
· 贵州省
回复
 
无悔
值得学习一下
· 四川省
回复
懒人办公
懒人办公

创作者俱乐部成员

点击文末链接练习,很简单的
· 贵州省
回复
 
懒人办公
懒人办公

创作者俱乐部成员

图片需要放在和表格一起的“图片”文件夹中,并以表格A列的内容命名
· 贵州省
回复
8237477087
大佬,问一下哈,这个代码我按照你说的,把图片文件夹哪里换我的实际的地址,然后后面也加入的实际的图片地址,就是.jpg哪里,然后还有也放到了图片的文件夹里面,在逐句运行的时候没有毛病,能运行下去,没提示啥,但是我按f5运行的时候表格里面一点反应都没有,请问一下是哪里出错了呢,感谢,感谢!!!!
· 重庆
回复