A seguir estão as funções vba IsPictureInCell e CopyCellPictureToClipboard. Eu apreciaria suas modificações sugeridas para essas duas funções para que elas funcionem corretamente com imagens bloqueadas em células.
' Checks if a picture exists in the specified cell
Function IsPictureInCell(Cell As Range) As Boolean
Dim shp As Shape, shpRange As Range
For Each shp In Cell.Parent.Shapes
Set shpRange = Cell.Parent.Range(shp.TopLeftCell, shp.BottomRightCell)
If Not Intersect(shpRange, Cell) Is Nothing Then
IsPictureInCell = True
Exit Function
End If
Next
End Function
' Copies pic to clipboard if the Cell contains a picture
Function CopyCellPictureToClipboard(Cell As Range) As Boolean
On Error Resume Next
Dim shp As Shape
For Each shp In Cell.Parent.Shapes
If Not Intersect(shp.TopLeftCell, Cell) Is Nothing Then
shp.Copy
CopyCellPictureToClipboard = True
Exit Function
End If
Next
CopyCellPictureToClipboard = False
End Function