본문으로 바로가기

상대 참조를 절대 참조로 한번에 변경하기

category 엑셀(Excel) 팁(Tips) 2018.06.04 09:16

댓글로 문의를 주신 분이 계셔서 상대 참조를 한번에 절대 참조로 모두 변경하는 방법에 대한 팁을 알려드리겠습니다.  일반적인 메뉴를 통해서 할 수 있는 방법은 없고, VBA를 통한 간단한 프로그래밍을 해줘야 합니다.


엑셀 VBA에는 ConverFomula라고 하는 메쏘드(Method)가 있는데 이것을 활용하면 비교적 쉽게 매크로 작성이 가능합니다. VBA에 익숙하지 않은 분들도 많으신 것 같아 따라하기식으로 진행합니다.


1. 엑셀 통합 문서에서 Alt+F11을 눌러서 비쥬얼 베이직 편집기를 시작합니다. 참고로 MS 오피스의 비쥬얼 베이직 편집기는 MS의 개발 언어 툴인 비쥬얼 베이직을 어플리케이션에서 사용할 수 있도록 제공하는 도구입니다.


2. [삽입-모듈]을 선택해서 새로운 모듈을 삽입합니다.



3. 모듈이 삽입되면 아래 코드를 그대로 입력합니다. (복사&붙여넣기) VBA를 조금 공부하신 분들은 금방 이해하실 수 있을겁니다.


Sub Relative2Absolute()

For Each c In Selection

If c.HasFormula = True Then

c.Formula = Application.ConvertFormula(c.Formula, xlA1, xlA1, xlAbsolute)

End If

Next c

End Sub


아래와 같이 모듈의 서브 클래스가 생깁니다.



4. 이제 필요한 VBA 프로그래밍이 끝났습니다. VBA 편집기를 닫고 다시 엑셀 통합 문서로 돌아옵니다. 절대주소(참조)를 포함하는 셀들을 모두 선택한 후 [보기-매크로]를 선택합니다. 그 후 매크로 창에서 방금 입력한 서브 클래스를 선택하고 [실행]을 클릭합니다.



* 수식 입력줄을 보면 모든 수식이 상대 참조임을 알 수 있습니다.


5.아래 그림처럼 선택된 모든 상대 참조 수식들이 절대 참조로 변경됩니다.




생각보다 간단하게 해결이 되죠?


이상 엑셀에서 상대 참조를 절대 참조로 한번에 변경하는 방법에 대해서 알아봤습니다.


댓글을 달아 주세요

티스토리 툴바