ExcelVBA使用Shape对象的AddPicture方法制作图片产品目录

使用Excel VBA的Shape对象的AddPicture方法,配合VBA代码,可以高效地制作适应单元格大小的图片产品目录。通过获取A列最后一个非空单元格,确定循环结束点,将指定目录中的JPG图片按名称插入,并调整尺寸。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

​如果需要制作如图1所示的产品目录,因为所需图片的尺寸通常并非完全一致,所以除了插入图片,还需要调整图片的尺寸以适应"图片"列单元格的大小。使用VBA可以快速完成这一系列繁杂的操作,示例代码如下。

Sub InsertPictures()
     Dim lngRow As Long
     Dim objShape As Shape
     Dim objTargetCell As Range
     With Sheet1
    .Shapes.SelectAll'选中工作表中的所有Shape对象
    Selection.Delete'删除选中的Shape对象
         If .Cells(3, 1).Value <> "" Then
             For lngRow = 3 To .Cells(3, 1).End(xlDown).Row
                 Set objTargetCell = .Cells(lngRow, 3)
                 .Shapes.AddPicture(ThisWorkbook.Path & "\" & _
                     .Cells(lngRow, 2) & ".jpg", True, True, _
                     objTargetCell.Left + 2, objTargetCell.Top + 2, _
                     objTargetCell.Width - 4, _
                     objTargetCell.Height - 4).Select
                 Selection.ShapeRange.LockAspectRatio = msoFalse'取消图片的纵横比,以适应单元格大小
             Next lngRow
         End If
     End With
     Set objTargetCell = Nothing
     Set objShape
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值