大家好,我是中藥黨。
馬上就過(guò)春節(jié)了,先祝各位一直陪伴走來(lái)的小伙伴們新年快樂(lè),過(guò)春節(jié)就好好休息放松,有張有弛才能更好地學(xué)習(xí)進(jìn)步。
今天我們分享一個(gè)簡(jiǎn)單的Excel自動(dòng)批量插入圖片的技巧,雖然很簡(jiǎn)單,但在工作中還是很常用的,案例如下:
現(xiàn)在有一個(gè)Excel員工名冊(cè),還有一個(gè)文件夾存放著員工照片,現(xiàn)在需要將員工照片批量插入名冊(cè)中。
在日常工作中經(jīng)常需要在工作表插入圖片,并且有的時(shí)候需要在指定位置插入大量圖片,通過(guò)手工操作的方式來(lái)進(jìn)行這些繁瑣的工作既要浪費(fèi)大量的時(shí)間而且非常容易出錯(cuò),如果用VBA就能快速完成這一系列繁瑣的操作。
iRow:用來(lái)循環(huán)遍歷的行號(hào)
photo:用來(lái)臨時(shí)存儲(chǔ)每次循環(huán)插入到工作表的圖片對(duì)象
Target:用來(lái)設(shè)定照片放置的基準(zhǔn)單元格
pic_addr:用來(lái)設(shè)定照片在計(jì)算機(jī)的存放路徑
下圖設(shè)置的是絕對(duì)路徑,也可以通過(guò)Thisworkbook.path設(shè)置相對(duì)路徑更加方便移植。
①按行遍歷數(shù)據(jù)表
②將與當(dāng)前行姓名列名稱相同的圖片插入
③設(shè)置當(dāng)前行的基準(zhǔn)單元格
④再將剛插入的照片按照基準(zhǔn)單元格設(shè)置位置和大小
完整代碼如下:
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(65535, 1).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
我們看一下執(zhí)行的效果:
聯(lián)系客服