책 내용 질문하기
기출 6회 27번 문제
도서
2026 한 권으로 끝내는 시나공 컴활 1급 필기+실기 (컴퓨터활용능력 1급)
페이지
192
조회수
21
작성일
2026-10-26
작성자
양*용
첨부파일

고생많으십니다. 저번 질문에 대한 답변을 상세하게 잘 해주셔서 감사드립니다.


27번 문제에서 궁금한 점이 있어 문의드립니다.


문제의 보기에서 "'성적현황', '학번', '학과'는 상대 참조로 기록되었다" 라고 2번 보기에 나와 있는데, 상대 참조라는 것을 알 수 있는 근거가 무엇인지 문의드립니다.


또한 VBA 코드 상에서 절대참조와 상대참조로 기록된 것을 구분하는 방법도 알려주시면 감사드리겠습니다.

답변
2026-10-27 09:43:53

안녕하세요.

②번이 상대 참조인 근거는 Offset을 사용하고 있기 때문입니다.

예를 들어

ActiveCell.Offset(0, 1).Range("A1").Select

는 현재 선택된 셀을 기준으로 오른쪽 한 칸 이동하라는 의미입니다. 즉, 특정 셀 주소를 고정해서 지정한 것이 아니라 현재 셀 위치를 기준으로 이동하므로 상대 참조입니다.

반면

Range("C2").Select
Range("A3").Select

처럼 셀 주소를 직접 지정한 경우에는 현재 선택 위치와 관계없이 항상 해당 셀을 선택하므로 절대 참조로 볼 수 있습니다.

정리하면 VBA 매크로 기록에서는 보통 다음과 같이 구분하면 됩니다.

  • ActiveCell.Offset(...) → 현재 셀을 기준으로 이동하므로 상대 참조

  • Range("A1"), Range("C2")처럼 주소를 직접 지정 → 절대 참조

따라서 이 문제에서 ‘성적현황’, ‘학번’, ‘학과’는 Offset을 이용해 위치를 이동하면서 입력하므로 상대 참조로 기록된 것입니다.

즐거운 하루 되세요.

  • 관리자
    2026-10-27 09:43:53

    안녕하세요.

    ②번이 상대 참조인 근거는 Offset을 사용하고 있기 때문입니다.

    예를 들어

    ActiveCell.Offset(0, 1).Range("A1").Select

    는 현재 선택된 셀을 기준으로 오른쪽 한 칸 이동하라는 의미입니다. 즉, 특정 셀 주소를 고정해서 지정한 것이 아니라 현재 셀 위치를 기준으로 이동하므로 상대 참조입니다.

    반면

    Range("C2").Select
    Range("A3").Select

    처럼 셀 주소를 직접 지정한 경우에는 현재 선택 위치와 관계없이 항상 해당 셀을 선택하므로 절대 참조로 볼 수 있습니다.

    정리하면 VBA 매크로 기록에서는 보통 다음과 같이 구분하면 됩니다.

    • ActiveCell.Offset(...) → 현재 셀을 기준으로 이동하므로 상대 참조

    • Range("A1"), Range("C2")처럼 주소를 직접 지정 → 절대 참조

    따라서 이 문제에서 ‘성적현황’, ‘학번’, ‘학과’는 Offset을 이용해 위치를 이동하면서 입력하므로 상대 참조로 기록된 것입니다.

    즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.