较早之前介绍过如何进行单元格插图,今天介绍如何对插入的图片进行删除。全部删除比较简单,全选即可,删除部分区域图片就没有快捷方式了,通常是逐个选择后进行删除。这里要介绍的是快速清除选定区域内图片,所以只需要选择单元格区域即可。
首先需要介绍两个知识点,Intersect和Shape.TopLeftCell。
Intersect ⽤来表⽰两个或两个以上单元格区域的交集,它返回⼀个[Range]对象,此对象代表两个或多个范围重叠的矩形区域,如果指定了不同工作表中的一个或多个区域,则返回错误。
Shape.TopLeftCell返回一 个 Range 对象,该对象代表指定对象左上角的单元格。
代码比较少,主要依靠上述知识点来实现操作结果。具体如下:
Sub 清除选择区域内图片()
Dim sp As Shape
Set rg = Selection
For Each sp In ActiveSheet.Shapes
If Not Intersect(sp.TopLeftCell, rg) Is Nothing Then
sp.Delete
End If
Next
End Sub
既然说到了选定区域,那就额外补充一些知识点:
1、选择区域左上角单元格行号:Selection.Row
2、选择区域左上角单元格列号:Selection. Column
3、选择区域的行数:Selection.Rows.Count
4、选择区域的列数:Selection.Columns.Count
根据上述四点,可以找出选择区域的四个顶点的单元格位置。