ISREF 함수
지원 버전 자세히 보기
엑셀 ISREF 함수는 넣은 값이 실제로 존재하는 셀 참조인지 알려 주는 함수입니다.
인수 설명
=ISREF(값)
- 셀이나 범위를 넣으면 TRUE, 숫자·글자·오류 값을 넣으면 FALSE가 나옵니다.
함수 개요
엑셀 ISREF 함수는 넣은 값이 셀 참조인지 알려 주는 함수입니다. 셀이나 범위를 넣으면 TRUE, 숫자나 글자를 넣으면 FALSE가 나옵니다.
혼자 쓰기보다 INDIRECT 함수 와 묶어 "글자로 적어 둔 주소가 실제로 쓸 수 있는 주소인지" 검사할 때 주로 씁니다. A2 셀에 "A1"이라는 글자가 들어 있습니다.
=ISREF(INDIRECT(A2))A2에 적힌 글자가 쓸 수 있는 셀 주소인지 확인합니다.
값이 비었는지, 숫자인지, 오류인지 확인하려면 ISBLANK ·ISNUMBER ·ISERROR 함수를 사용합니다.
ISREF 함수 간단 예제
셀이나 범위를 그대로 넣으면 안에 든 값과 상관없이 늘 TRUE가 나옵니다. 빈 셀이어도 마찬가지입니다.
=ISREF(A1)A1은 셀 주소이므로 TRUE가 나옵니다.
A2 셀에 "A1", A4 셀에 "A0"이 적혀 있습니다. A0은 존재하지 않는 주소라 INDIRECT 함수가 오류를 내고, ISREF 함수는 FALSE를 돌려줍니다.
=ISREF(INDIRECT(A4))A0은 없는 주소라 FALSE가 나옵니다.
IF 함수 와 묶으면 사용자가 잘못 적은 주소를 바로 알려 줄 수 있습니다.
=IF(ISREF(INDIRECT(A4)),INDIRECT(A4),"주소를 다시 확인해 주세요")주소가 잘못되면 안내 문구를 보여 줍니다.
그 외 주의사항
셀을 그대로 넣으면 빈 셀이든 오류가 든 셀이든 늘 TRUE가 나옵니다. 셀 안의 값을 검사하는 함수가 아니라 "이것이 주소인가"만 보는 함수입니다.
글자로 적은 주소를 검사하려면 INDIRECT 함수로 한 번 감싸야 합니다. =ISREF("A1")처럼 글자를 바로 넣으면 언제나 FALSE입니다.
INDIRECT 함수는 참조하는 셀이 바뀔 때마다 다시 계산됩니다. 수백 개 셀에 늘어놓으면 파일이 느려지므로 검사가 꼭 필요한 칸에만 씁니다.