微信公众号:yhjbox(永恒君的百宝箱),获取最新文章、资源。

Excel VBA 实例(38)- 批量插入图片并完美匹配单元格大小

Excel VBA 实例 永恒君 1850℃ 0评论

有的时候我们在excel记录班级同学、公司员工的档案信息的时候,会需要插入人物的照片。

Excel里面一张一张的插入照片,还需要手工的将每张图片调整和单元格一样的长宽,相信这个工作量就很赶人~~~

图片

不过还好有VBA!!!

今天这篇文章就来分享一下用VBA帮你快速搞定Excel批量插入图片并完美匹配单元格大小。

问题背景

如下图,我们想实现的效果是,将提前收集准备好的图片插入到excel表格当中去,姓名就是插入图片的名字。

图片

实操过程

1、提取所有图片的名字

这里我们可以使用之前介绍过的bat方法,新建一个txt文档,将下面的代码复制进去,保存为filename.bat

dir /B *.* >list.txt 

图片

然后将bat文件放入图片所在的文件夹内,双击,会自动生成一个list.txt的文档。

图片

这样,我们就提取到了所有图片的名字。

2、用VBA批量插入图片

将上一步的涉及到的所有图片名字都复制到excel表当中去

图片

然后运行下面的VBA代码

图片

效果演示:

图片

这样图片就自动插入进去了,并且自动将大小调整好和单元格匹配。

图片

觉得不好或者需要更新照片的话,可以点击删除,然后再重新插入。

3、用“查找和替换”功能,将B2列姓名后面的扩展名删除掉。

这样就大功告成。

图片

值得一说的地方

上面的代码里面,图片宽度列宽值得注意,这里说明一下。

VBA里的图片宽度列宽不是同一个单位,至于为啥我也说不清楚,应该是个long story。

我们平常使用也不用纠结这么多,只需要参照永恒君调整好的这个比例就差不多。

如下图,图片宽度列宽=76:12=6.33

图片

比如,你的excel表格里面放图片的单元格列宽是18,那么图片宽度需要设置为18*6.33=113.9即可。将代码里的这两个变量修改一下就可以了。

好了,以上就是今天的全部分享内容。

如果你对上面这些感兴趣的话,可以在公号内回复「插入图片」获取vba文件进行试用吧~~

 

你可能还会想看:

欢迎交流!

转载请注明:永恒君的百宝箱 » Excel VBA 实例(38)- 批量插入图片并完美匹配单元格大小

喜欢 (9)
发表我的评论
取消评论
表情