문제
다음 중 현재 선택된 셀을 기준으로 왼쪽 두 번째 셀과 바로 왼쪽 셀을 곱하는 수식을 입력하는 VBA 코드로 옳은 것은?
① ActiveCell.FormulaR1C1 = "=RC[2]*RC[1]" ② ActiveCell.FormulaR1C1 = "=RC[-2]*RC[-1]" ③ ActiveCell.Value = RC[2]*RC[1] ④ ActiveCell.Value = RC[-2]*RC[-1]
정답
2번
해설
정답: 2. R1C1 상대 참조에서 RC[-2]는 같은 행의 왼쪽 두 번째 셀, RC[-1]은 바로 왼쪽 셀을 의미한다. 음수 대괄호가 왼쪽(이전 열) 방향이다.
오답 풀이
- 1번: RC[2], RC[1]은 오른쪽 셀을 가리키므로 옳지 않다.
- 2번: RC[-2]·RC[-1]이 왼쪽 두 번째·바로 왼쪽 셀이고 FormulaR1C1로 수식을 넣으므로 옳다.
- 3번: Value로 수식 문자열을 넣을 수 없고, 방향도 오른쪽이라 옳지 않다.
- 4번: Value에 R1C1 표기를 직접 쓸 수 없으므로 옳지 않다.
보충 개념 R1C1 참조에서 대괄호 안 숫자는 현재 셀 기준 상대 위치이다. 양수는 아래·오른쪽, 음수는 위·왼쪽 방향을 가리킨다.