使用场景:
之前文章描述的批量删除图形的方法,虽然高效,但是不够灵活,有时候我们需要删除固定区域或选定区域的图形或图片,因此需要重新使用一种方法实现这两个功能。

方法描述
划定区域,对比图形或图片是否在这个区域范围内,当在这个范围内时将其删除即可。
代码:
Sub 删除固定区域图形()
DelPicByRng [S3:U100] '删除S3到U100区域内的图片 其他区域不受影响
End Sub
Sub 删除选定区域图形()
DelPicByRng Selection '删除选定区域的图片 其他区域不受影响
End Sub
Sub DelPicByRng(rng As Range)
'删除指定单元格区域内的图片
Dim i As Integer, shps
Set shps = rng.Worksheet.Shapes
For i = shps.Count To 1 Step -1 '倒序循环图片
If Not Intersect(shps(i).TopLeftCell, rng) Is Nothing Then '检测到图片位置与选定区域重叠则删除
shps(i).Delete
End If
Next i
End Sub
添加控制按钮:
1、添加图形;
2、右键→指定宏
3、确认后即可


本文介绍了如何使用VBA宏来实现Excel中按固定区域或选定区域删除图形和图片的功能。提供了两个子程序,一个用于删除指定范围内的图片,另一个删除选中区域的图片。通过在工作表中添加控制按钮并指定宏,用户可以方便地执行这些操作,提高工作效率。
267

被折叠的 条评论
为什么被折叠?



