엑셀은 융통성이 없는 한마디로 정석만 고집하는 고지식한 프로그램입니다 ~~
우리가 평균을 구할때 AVERAGE 라는 함수명을 AVERGE 라고 중간에 'A'라는 철자가 빠졌어도 '아 평균을 구하는 함수구나 ' 라고 이해합니다
하지만 엑셀은 여지없이 #NAME 이라고 하면서 결과를 보여주지 않습니다
'정확히 함수명을 입력하라' 고 하는것이죠
#NAME 이라는 오류메시지는 구체적으로 다음의 경우에 발생합니다.
- 함수의 이름을 잘못 입력했을 때
- 참조영역의 이름을 잘못 입력했을 때
- 이름정의에 없는 이름을 입력했을 때
- 텍스트 값을 입력할 때 쌍따옴표를 누락(쌍따옴표가 없으므로 참조영역 또는 이름정의에 있는 이름을 입력한 것으로 인식하는데 입력한 이름에 해당하는 것이 없으므로 이름이 잘못 입력되었다고 판단함)했을 때
하나씩 살펴볼께요
- 함수의 이름을 잘못 입력했을 때 → 위에서 설명한것처럼 함수 이름을 잘못 입력했을때입니다
- 참조영역의 이름을 잘못 입력했을 때 → 대부분 함수의 인수를 쓸때 범위를 잘못 지정한 경우 입니다
보통 함수의 인수로 범위를 지정할 때는 시작셀주소 : 마지막셀주소 이렇게 써야 합니다
A3:A10 , B5:D20 이렇게요
그런데 A3;A10 (범위는 콜론(:)으로 구분합니다) 으로 하면 범위지정하는 방법이 틀려서 오류가 납니다
위 사진은 엑셀이 친절하게 수식의 오류를 잡아내고 수정하겠다고 하네요 이럴땐 당연히 '예' 해야겠죠!
- 이름정의에 없는 이름을 입력했을 때 → 이름 정의가 된 범위를 인수로 사용할 때 셀범위 대신에 정의된 이름을 사용할 수 있습니다 그런데 정의 되지 않은 이름을 쓰면 당연히 오류가 나겠죠!! 내가 쓴 이름이 이름정의 목록에 없으니까요
- 텍스트 값을 입력할 때 쌍따옴표를 누락(쌍따옴표가 없으므로 참조영역 또는 이름정의에 있는 이름을 입력한 것으로 인식하는데 입력한 이름에 해당하는 것이 없으므로 이름이 잘못 입력되었다고 판단함)했을 때 → 함수의 인수로 직접 문자를 지정할 때가 있습니다 그럴때에는 문자 양쪽에 쌍따옴표를 해야 문자로 인식합니다 쌍따옴표를 쓰지 않으면 이름 정의로 인식합니다
예를 들어 =LEFT(대한민국, 2) 이라고 쓰면 '대한민국'은 쌍따옴표가 없기 때문에 이름 정의 된 '대한민국'이라고 인식하게 되고 '대한민국' 이라는 이름 정의를 찾게 됩니다 그런데 '대한민국'은 이름정의가 아니죠! 그래서 오류가 납니다 해결 방법은 =LEFT("대한민국", 2) 해야 "대한민국" 이라는 문자에서 왼쪽에서 2개 읽어 오니까 "대한"을 나타냅니다
자 ~ 이제 아셨죠!!!
#NAME 오류메시지는 사용자와 엑셀간의 약속된 내용이 틀렸을때 나오는 메시지입니다
'뭔가 약속된 내용이 틀렸다' 하는 거죠
반응형
'엑셀 -알아두면 쓸모있는 기능 > 엑셀 오류메시지 해결하기' 카테고리의 다른 글
엑셀 #NUM 오류메시지 해결하기 (0) | 2024.01.26 |
---|---|
엑셀 #REF 오류메시지 해결하기 (0) | 2024.01.26 |
엑셀 #VALUE 오류 메시지 해결하기 (0) | 2024.01.26 |
엑셀 VLOOKUP, HLOOKUP, MATCH에서 나오는 #N/A 오류메시지 해결하는 방법 (3) | 2023.12.07 |
엑셀 #DIV/0 오류메시지 IFERROR 함수로 해결하는 방법 (1) | 2023.12.06 |