分享

【20190129】- 在Excel名册中自动批量插入照片

 L罗乐 2019-01-29

大家好,我是中药党。

 

马上就过春节了,先祝各位一直陪伴走来的小伙伴们新年快乐,过春节就好好休息放松,有张有弛才能更好地学习进步。

 

今天我们分享一个简单的Excel自动批量插入图片的技巧,虽然很简单,但在工作中还是很常用的,案例如下:

现在有一个Excel员工名册,还有一个文件夹存放着员工照片,现在需要将员工照片批量插入名册中




在日常工作中经常需要在工作表插入图片,并且有的时候需要在指定位置插入大量图片,通过手工操作的方式来进行这些繁琐的工作既要浪费大量的时间而且非常容易出错,如果用VBA就能快速完成这一系列繁琐的操作。


1.定义相关变量

iRow:用来循环遍历的行号

photo:用来临时存储每次循环插入到工作表的图片对象

Target:用来设定照片放置的基准单元格

pic_addr:用来设定照片在计算机的存放路径

下图设置的是绝对路径,也可以通过Thisworkbook.path设置相对路径更加方便移植。



2.按行遍历插入照片

①按行遍历数据表

②将与当前行姓名列名称相同的图片插入

③设置当前行的基准单元格

④再将刚插入的照片按照基准单元格设置位置和大小



完整代码如下:

1Sub 批量插入图片()
2
3    Dim iRow As Integer
4    Dim photo As Picture
5    Dim Target As Range
6    Dim pic_addr As String
7
8    pic_addr = ThisWorkbook.Path & '\pic\'
9
10
11    With ActiveSheet
12        For iRow = 2 To .Cells(655351).End(xlUp).Row
13
14          Set photo = .Pictures.Insert(pic_addr & .Cells(iRow, 2) _
15          & '.jpg')
16
17          Set Target = .Cells(iRow, 5)
18
19          With photo
20            .Top = Target.Top
21            .Left = Target.Left
22            .Width = Target.Width
23            .Height = Target.Height
24          End With
25        Next
26    End With
27End Sub


我们看一下执行的效果:


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

    0条评论

    发表

    请遵守用户 评论公约