범위의 모든 그림을 삭제하려고합니다. 나는 온라인으로 아래의 코드를 발견하지만은 행에 형식 불일치 오류를 던지고 :그림을 삭제할 때 VBA 유형이 일치하지 않습니다.
For Each pic In ws.Pictures
모든 입력 또는 대체 코드가 많이 감사합니다.
Sub clearPics()
Dim s As String
Dim pic As Picture
Dim rng As Range
Set ws = Worksheets("sort")
Set rng = ws.Range("c:c")
For Each pic In ws.Pictures
With pic
s = .TopLeftCell.Address & ":" & .BottomRightCell.Address
End With
If Not Intersect(rng, ws.Range(s)) Is Nothing Then
pic.Delete
End If
Next
End Sub
감사합니다, JJ
저는 항상 이런 종류의 코드로 고생하고 있지만 'Dim pic as Shape'으로 변경하면 문제가 해결됩니까? –
Microsoft worksheet.pictures 문서에 개체가 표시됩니다. Dim Picture를 Object로 변경했습니다. https://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.worksheet.pictures(v=vs.120).aspx?cs-save-lang=1&cs-lang=vb#code @nepet-1 – PKatona
@ 지프, "In ws.Pictures"부분이 그걸 처리 하겠지만 완전히 테스트되지 않았기 때문에 나는 알지 못한다. –