문제
엑셀에서 매크로를 절대 참조로 기록했을 때와 상대 참조로 기록했을 때의 VBA 코드 차이점으로 가장 정확한 것은?
① 절대 참조는 ActiveCell.Offset(0, 1).Select 형태로, 상대 참조는 Range("B1").Select 형태로 기록된다 ② 절대 참조는 Range("B1").Select 형태로, 상대 참조는 ActiveCell.Offset(0, 1).Select 형태로 기록된다 ③ 두 방식 모두 동일하게 Range 객체만 사용하며 차이가 없다 ④ 상대 참조로 기록하면 매크로 실행 시 반드시 A1 셀에서 시작해야 한다
정답
2번
해설
② 절대 참조로 매크로를 기록하면 Range("B1").Select처럼 고정된 셀 주소가 VBA 코드에 기록되고, 상대 참조로 기록하면 ActiveCell.Offset(행, 열).Select처럼 현재 활성 셀을 기준으로 한 상대적 위치가 기록됩니다. 이는 매크로의 재사용성과 직결되는 중요한 차이점입니다. ① 설명이 반대로 되어 있습니다. ③ 두 방식은 명확히 다른 코드 구조를 가집니다. ④ 상대 참조 매크로는 어느 셀에서든 시작할 수 있습니다.