VBA插入当前路径下格式为png和jpg的图片并到另一个工作簿中工作表的指定单元格
以下是一个示例代码,可以将当前路径下的所有png和jpg格式的图片插入到另一个工作簿中工作表的指定单元格中:
Sub InsertImagesToWorkbook()
Dim sourcePath As String
Dim targetWorkbook As Workbook
Dim targetSheet As Worksheet
Dim targetCell As Range
Dim file As String
Dim fileExtension As String
Dim imagePath As String
Dim picture As Picture
' 设置源文件夹路径
sourcePath = ThisWorkbook.Path & "\"
' 打开目标工作簿
Set targetWorkbook = Workbooks.Open("目标工作簿路径.xlsx")
' 设置目标工作表和单元格
Set targetSheet = targetWorkbook.Worksheets("目标工作表名称")
Set targetCell = targetSheet.Range("A1")
' 循环遍历源文件夹中的所有文件
file = Dir(sourcePath)
Do While file <> ""
' 获取文件扩展名
fileExtension = LCase(Right(file, Len(file) - InStrRev(file, ".")))
' 判断文件是否为png或jpg格式
If fileExtension = "png" Or fileExtension = "jpg" Then
' 构造图片路径
imagePath = sourcePath & file
' 在目标工作表的指定单元格中插入图片
Set picture = targetSheet.Pictures.Insert(imagePath)
With picture
.Left = targetCell.Left
.Top = targetCell.Top
.Width = targetCell.Width
.Height = targetCell.Height
End With
' 移动到下一个单元格
Set targetCell = targetCell.Offset(1)
' 释放图片对象
Set picture = Nothing
End If
' 继续遍历下一个文件
file = Dir
Loop
' 关闭目标工作簿,保存更改
targetWorkbook.Close SaveChanges:=True
' 释放对象
Set targetCell = Nothing
Set targetSheet = Nothing
Set targetWorkbook = Nothing
End Sub
请注意,您需要根据实际情况修改源文件夹路径、目标工作簿路径、目标工作表名称以及插入图片的起始单元格位置
原文地址: https://www.cveoy.top/t/topic/hY3v 著作权归作者所有。请勿转载和采集!