如何用vba获取工作表的图片所占据的单元格区域?

在excel工作表中图片都是至于单元格上的图层。

在vba中用Shape对象表示各种图片,如果要获取某个图片所占据的单元格区域,可以使用Shape对象的TopLeftCell属性和BottomRightCell属性返回Shape对象的左上角和右下角单元格区域,从而构成了整个图片占据的单元格区域。

如下vba代码举例示范了如何将图片的名称存储在图片所占据的单元格区域的左上角单元格。

Sub QQ1722187970()
    Dim oRng As Range
    Dim oSP As Shape
    Dim oWK As Worksheet
    Set oWK = Sheet2
    With oWK
        For Each oSP In .Shapes
            With oSP
                Set oRng = .TopLeftCell
                oRng.Value = ""
                oRng.Value = "$" & .Name & "$"
            End With
        Next
    End With
End Sub

 

       

发表评论