엑셀에서 수식을 입력하는데 하나 이상의 순환 참조가 있습니다라는 경고가 뜨면 결과가 0으로 나오거나 계산이 이상해집니다. 초보자가 자주 겪는 오류입니다. 순환 참조 경고의 원인과 해결 방법을 정리합니다.
순환 참조란 무엇인가
순환 참조는 수식이 자기 자신을 직접 또는 간접적으로 참조하는 상태입니다. 예를 들어 A1 셀에 A1을 포함한 수식을 넣으면 순환 참조가 됩니다.
엑셀은 A1을 계산하려면 A1 값이 필요한데 그 값이 아직 정해지지 않아 무한히 반복되는 상황에 빠집니다. 그래서 경고를 띄우고 계산을 멈춥니다.
직접 자기 셀을 넣지 않았어도 여러 셀이 서로 물고 물리면 간접 순환 참조가 생깁니다. B가 A를 참조하고 A가 다시 B를 참조하는 식입니다.
순환 참조가 생기는 흔한 경우
합계 범위에 합계 셀 자신이 포함되는 경우가 가장 흔합니다. SUM 함수 범위를 지정할 때 결과가 들어갈 셀까지 포함하면 순환 참조가 됩니다.
여러 시트에 걸쳐 참조가 얽힐 때도 발생합니다. 표가 복잡해지면 자기도 모르게 서로 참조하는 구조가 만들어집니다.
수식을 복사하거나 행과 열을 삽입하면서 참조가 어긋나 순환 참조로 이어지기도 합니다. 복사 후 결과가 이상하면 순환 참조를 의심해야 합니다.
순환 참조 위치 찾기
| 단계 | 동작 |
|---|---|
| 1 | 수식 탭 열기 |
| 2 | 오류 검사 화살표 |
| 3 | 순환 참조 선택 |
| 4 | 표시된 셀 확인 |
수식 탭의 오류 검사 옆 화살표를 누르면 순환 참조 메뉴가 나옵니다. 여기에 순환 참조가 있는 셀 주소가 표시됩니다.
표시된 셀로 이동해 수식을 확인하면 어디서 자기 참조가 일어나는지 알 수 있습니다. 화면 아래 상태 표시줄에도 순환 참조 셀이 표시되니 참고하세요.
수식 수정하기
순환 참조 셀을 찾으면 참조 범위에서 자기 셀을 빼거나 참조 대상을 바로잡습니다. 대부분 범위 지정을 잘못한 것이라 범위만 고치면 해결됩니다.
합계 셀이 범위에 포함됐다면 합계 셀을 제외한 범위로 다시 지정합니다. 결과가 들어갈 셀은 계산 대상에서 빼야 합니다.
서로 참조하는 구조라면 계산 흐름을 다시 설계해야 합니다. 어느 셀이 먼저 계산되어야 하는지 순서를 정리하면 순환을 끊을 수 있습니다.
의도한 반복 계산일 때
드물게 순환 참조를 의도적으로 쓰는 경우가 있습니다. 반복 계산이 필요한 특수한 계산에서는 반복 계산 옵션을 켜서 처리합니다.
파일 옵션의 수식 항목에서 반복 계산 사용을 체크하면 순환 참조를 허용하고 정해진 횟수만큼 반복 계산합니다.
다만 일반적인 표에서는 반복 계산을 켜지 않는 것이 좋습니다. 실수로 생긴 순환 참조를 반복 계산으로 덮으면 잘못된 결과를 눈치채기 어렵습니다.
정리
순환 참조는 수식이 자기 자신을 직접 또는 간접으로 참조해 무한 반복에 빠지는 상태로 합계 범위에 결과 셀이 포함되거나 여러 셀이 서로 물릴 때 발생합니다. 수식 탭의 오류 검사에서 순환 참조 메뉴로 위치를 찾고 상태 표시줄도 참고하세요. 참조 범위에서 자기 셀을 빼거나 계산 순서를 다시 설계하면 해결됩니다. 의도한 반복 계산이 아니라면 반복 계산 옵션은 켜지 않는 것이 안전합니다. 위치 찾기부터 수식 수정 순으로 접근하면 순환 참조 경고를 없앨 수 있습니다.
엑셀 순환 참조 관련 궁금하면 댓글로 상황 남겨주세요.