안녕하세요

오늘은 엑셀에서 그림의 위치를 구해보고자 합니다.

 

그림의 위치를 구할 때에 그림이 위치한 셀 위치를 구하거나 절대위치를 구하는 두가지 방법이 있습니다.

 

1. 먼저 셀의 위치를 구하는 방법은 다음과 같습니다.

 

For Each Pic In ActiveSheet.Pictures

  Cells(1, 2) = Pic.TopLeftCell.Address

 

즉 그림 개체의 좌상단이 속해있는 셀의 위치를 가져오구요

 

그림에서 보시는 바와 같이  'C1' 위치를 가져옵니다.

 

  Cells(2, 2) = Pic.BottomRightCell.Address

 

그림 개체 우하단의 셀의 위치를 가져옵니다.

 

'F6' 이 되겠죠

 

추가적으로 그림이 위치한 셀영역을 선택하려고 하면 이렇게 하시면 됩니다.

Range(Pic.TopLeftCell.Address, Pic.BottomRightCell.Address).Select

2. 절대 위치를 구하는 방법은 다음과 같습니다.

 

For Each Pic In ActiveSheet.Pictures

  Cells(3, 2) = Pic.Top

즉 그림 개체의 상단의 절대위치를 가져오고요.

 

  Cells(4, 2) = Pic.Left

 

그림 개체의 좌측 절대위치를 가져옵니다.

 

  Cells(5, 2) = Pic.Height

 

그림 개체의 좌측 절대위치를 가져옵니다.

 

  Cells(6, 2) = Pic.Width

 

그림 개체의 좌측 절대위치를 가져옵니다.

 

 

3. 실행결과입니다.

그림의 좌상단(C1)과 우하단(F6) 셀의 위치를 잘 가져왔고요

또한 상단(10.5), 좌측(174), 높이(148.5), 너비(163.5) 의 절대 위치를 가져왔습니다.


VBA 코드입니다.

참고바랍니다.

Sub Ext()
For Each Pic In ActiveSheet.Pictures
    Cells(1, 2) = Pic.TopLeftCell.Address
    Cells(2, 2) = Pic.BottomRightCell.Address
    Cells(3, 2) = Pic.Top
    Cells(4, 2) = Pic.Left
    Cells(5, 2) = Pic.Height
    Cells(6, 2) = Pic.Width
Next
End Sub

 

+ Recent posts