마이크로소프트 엑셀(Microsoft Excel)은 마이크로소프트가 개발·배포하는 스프레드시트 프로그램으로, 거의 모든 플랫폼에서 사용할 수 있으며 업무를 비롯한 다양한 분야에서 폭넓게 활용되고 있습니다. 직관적인 인터페이스와 수많은 수식·함수 덕분에 데이터를 손쉽게 정리하고 문서화할 수 있다는 점이 큰 장점입니다.
그러나 최근 특정 문자를 단어로 바꾸는 수식을 적용하려고 할 때 '배열 값을 찾을 수 없습니다(An Array Value Could not be Found)' 오류가 발생했다는 사용자 보고가 많이 접수되고 있습니다. 이 오류가 발생하면 평소 사용하던 대체(SUBSTITUTE) 함수조차 제대로 작동하지 않아 당황스러울 수 있습니다.
이 글에서는 해당 오류가 발생하는 원인을 살펴보고, 실제로 효과가 있는 해결 방법들을 순서대로 안내해 드리겠습니다.
엑셀에서 '배열 값을 찾을 수 없습니다' 오류가 발생하는 원인
여러 사용자의 보고를 바탕으로 원인을 조사한 결과, 이 오류의 핵심 원인은 다음과 같습니다.
- 잘못된 수식 입력: 대체(substitute) 함수를 잘못된 형식으로 입력하면 이 오류가 발생합니다. 많은 사용자가 특정 문자를 단어나 문장으로 한 번에 바꾸기 위해 배열 수식을 활용하는데, 구문이 정확하지 않으면 오류가 반환됩니다.
문제의 성격을 이해하셨다면, 아래 해결 방법을 소개된 순서대로 하나씩 적용해 보시기 바랍니다. 순서를 지키면 방법 간 충돌 없이 문제를 해결할 수 있습니다.
방법 1: SUBSTITUTE 배열 수식 사용하기
수식이 잘못 입력되면 대체 함수가 정상적으로 작동하지 않습니다. 이 경우 아래와 같은 배열 수식을 사용해 기능을 실행할 수 있습니다.
- 엑셀을 실행하고 수식을 적용할 스프레드시트를 엽니다.
- 수식을 적용할 셀을 클릭합니다.
- 수식 입력줄(Formula Bar)을 클릭합니다.
- 아래 수식을 입력한 뒤 Enter 키를 누릅니다.
=ArrayFormula(substitute(substitute(substitute(E2:E5&" "," y "," Y ")," yes "," Y ")," Yes "," Y "))
- 위 예시에서는 "Y"를 "Yes"로 바꾸는 경우입니다.
- 바꾸려는 문자나 단어를 "Y" 자리에, 새로 넣을 문자나 단어를 "yes" 자리에 넣고, 셀 범위 주소도 상황에 맞게 수정하면 됩니다.
방법 2: REGEXMATCH 수식 사용하기
앞선 방법으로 해결되지 않았다면, 다른 관점에서 접근하는 것이 도움이 될 수 있습니다. 이번에는 정규식 매칭을 활용해 같은 작업을 처리하는 수식을 적용해 보겠습니다.
- 엑셀을 실행하고 수식을 적용할 스프레드시트를 엽니다.
- 수식을 적용할 셀을 클릭합니다.
- 수식 입력줄을 선택합니다.
- 아래 수식을 입력한 뒤 Enter 키를 누릅니다.
=if(REGEXMATCH(E2,"^Yes|yes|Y|y")=true,"Yes")
- 이 수식 역시 "Y"를 "Yes"로 바꿔 줍니다.
- "Y"와 "Yes" 값은 필요에 따라 자유롭게 변경할 수 있습니다.
방법 3: 결합 수식 사용하기
경우에 따라서는 위 두 가지 수식을 결합한 형태가 가장 효과적일 수 있습니다. 여러 셀을 한 번에 처리하면서 정규식 조건도 함께 적용하고 싶다면 아래 방법을 사용해 보세요.
- 엑셀을 실행하고 수식을 적용할 스프레드시트를 엽니다.
- 수식을 적용할 셀을 선택합니다.
- 수식 입력줄을 클릭합니다.
- 아래 수식을 입력한 뒤 Enter 키를 누릅니다.
=ArrayFormula(if(REGEXMATCH(E2:E50,"^Yes|yes|Y|y")=true,"Yes"))
- 이 수식 역시 "Y"를 "Yes"로 바꾸며, 셀 범위와 조건을 상황에 맞게 설정할 수 있습니다.
방법 4: REGEXREPLACE 수식 사용하기
오류를 완전히 제거하려면 정규식 치환 함수인 "REGEXREPLACE"를 활용해야 하는 경우도 있습니다. 이 방법은 공백을 포함한 패턴 매칭으로 더욱 정확하게 문자를 교체할 수 있습니다.
- 엑셀을 실행하고 수식을 적용할 스프레드시트를 엽니다.
- 수식을 적용할 셀을 선택합니다.
- 수식 입력줄을 클릭합니다.
- 아래 수식을 입력한 뒤 Enter 키를 누릅니다.
=ArrayFormula(regexreplace(" "&E2:E50&" "," y | yes | Yes "," Y ")) - 이 수식은 "Y"를 "Yes"로 바꾸며, 사용자의 상황에 맞게 패턴과 값을 조정할 수 있습니다.
마무리
'배열 값을 찾을 수 없습니다' 오류는 대부분 수식 입력 방식의 문제에서 비롯됩니다. 위에서 소개한 네 가지 수식 중 자신의 상황에 맞는 것을 선택해 적용하면, 여러 셀에 걸친 문자 치환 작업을 오류 없이 한 번에 처리할 수 있습니다. 수식을 수정할 때는 셀 범위와 대상 문자, 교체할 문자만 정확히 바꿔 주면 되므로 초보자도 쉽게 따라 할 수 있습니다.