Excel批量導入圖片的方法實例教程

excel批量導入圖片一般是使用VBA代碼實現,因為excel功能的局限性,插入——圖片,盡管可以批量導入圖片,但不能自動排版 。
文章總結幾個excel批量導入圖片相關的案例,分享給大家 。
excel批量導入圖片案例一:
如下圖所示:A列是姓名,D列需要批量導入A列姓名對應的照片,當單擊“圖片導入”按鈕,即可批量導入圖片 。
下面的代碼實現的功能是:批量導入圖片,然后按照原比例縮放以填充單元格,如果單元格高寬改變,再次單擊“圖片導入”按鈕即可 。
說明:對應的圖片命名需要和姓名一致,圖片文件夾和excel源文件放在同一路徑之下 。
下面是具體的代碼:
Sub 批量導入圖片()
‘將圖片導入 。
‘圖片按照原比例存儲,按照原比例存儲
On Error Resume Next
Dim R&
Dim Pic As Object
‘先刪除所有可能存在的圖片
For Each Pic In Sheet1.Shapes
If Pic.Name <> Sheet1.Shapes("按鈕 97").Name Then
Pic.Delete
End If
Next
For R = 2 To Range("A65536").End(xlUp).Row
‘插入圖片
Set Pic = Sheet1.Pictures.Insert(ThisWorkbook.Path & "\pic\" & Cells(R, 1) & ".jpg")
‘鎖定高寬比
Pic.ShapeRange.LockAspectRatio = True
‘看高寬比 。如果圖片高寬比高,那么調整到單元格高度,否則調整到單元格寬度
‘我們看到的右鍵格式菜單里的東西都是針對ShapeRange而言的,所以要用ShapeRange來設定
With Pic.ShapeRange
‘如果圖片高寬比比單元格大,說明圖片太高,只需調整圖片高度
If .Height / .Width > Cells(R, 4).Height / Cells(R, 4).Width Then
.Height = Cells(R, 4).Height
‘調整位置
.Top = Cells(R, 4).Top
.Left = Cells(R, 4).Left + (Cells(R, 4).Width – .Width) / 2
‘如果圖片高寬比比單元格小,說明圖片太寬,只需調整圖片寬度
Else
.Width = Cells(R, 4).Width
‘調整位置
.Left = Cells(R, 4).Left
.Top = Cells(R, 4).Top + (Cells(R, 4).Height – .Height) / 2
End If
End With
Next R
End Sub
我們在excel對圖片進行排版時,可以選中圖片,勾選對齊網格,以及在插入圖片或控件時,按住Alt鍵并拖動對象的邊框,可以快速調整尺寸適應單元格大小 。
【Excel批量導入圖片的方法實例教程】

    猜你喜歡