2021-05-12 14:32:11
EXCEL技巧——怎樣自動新增照片
在採集員工資訊或者學生資訊的時候,常常需要新增上照片,如果資訊量比較大,我們通過插入圖片的方式來完成就比較困難,這裡我們嘗試用巨集來解決這個問題。
1
首先我們需要把照片放到檔案夾裡面,命名為111,然後把工作表和檔案夾111放在同一目錄=C:Documents and SettingsAdministrator桌面111,工作表的建立形式如圖所示。
2
開啟工作表,點選開發工具——巨集,開啟巨集編輯視窗,在巨集名稱中輸入「AutoAddPic」,單擊「建立」按鈕,開啟巨集編輯器。
3
在 Sub AutoAddPic()
End Sub
中間輸入以下程式碼,儲存後,關閉。
For Each Shp In ActiveSheet.Shapes
If Shp.Type = msoPicture Then Shp.Delete
Next
Dim MyPcName As String
For i = 1 To ThisWorkbook.ActiveSheet.UsedRange.Rows.Count
If (ActiveSheet.Cells(i, 1).Value = "姓名") Then
MyPcName = ActiveSheet.Cells(i, 2).Value & ".jpg"
ActiveSheet.Cells(i + 1, 2).Select
Dim MyFile As Object
Set MyFile = CreateObject("Scripting.FileSystemObject")
If MyFile.FileExists(ThisWorkbook.Path & "" & "111" & "" & MyPcName) = False Then
MsgBox ThisWorkbook.Path & "" & "111" & "" & MyPcName & "暫無圖片"
Else
ActiveSheet.Pictures.Insert(ThisWorkbook.Path & "" & "111" & "" & MyPcName).Select
End If
End If
Next i
4
開啟工作表,點選開發工具——巨集,開啟巨集編輯視窗,選擇AutoAddPic,單擊執行,這時候,工作表中就插入了照片。
1
? ?If (ActiveSheet.Cells(i, 1).Value = "姓名") Then ? ??? ? MyPcName = ActiveSheet.Cells(i, 2).Value & ".jpg" ? ?? ? ActiveSheet.Cells(i + 1, 2).Select? ? Dim MyFile As Object? ? Set MyFile = CreateObject("Scripting.FileSystemObject")意思是在(i, 1)中如果單元格內容是「姓名」,在它右邊2
??ThisWorkbook.Path & "" & "111" & "" & MyPcName,其中ThisWorkbook.Path是指該工作表的路徑,111是檔案夾的名稱,相關文章