본문 바로가기
구글 스프레드 시트

[구글 스프레드 시트 활용] IF, ISNUMBER 활용하여 경고문 만들기

by MoonD 2020. 5. 8.
반응형

이전 포스팅에서 이어집니다.

2020/05/08 - [구글 스프레드 시트] - [구글 스프레드 시트 활용] VLOOKUP, MULTIPLY, LEN, LEFT, RIGHT 함수 활용하여 단위가 포함된 달러값 환산하기

 

[구글 스프레드 시트 활용] VLOOKUP, MULTIPLY, LEN, LEFT, RIGHT 함수 활용하여 단위가 포함된 달러값 환산

이전 포스팅과 이어집니다. [구글 스프레드 활용] IF, ISNUMBER, SEARCH, SUBSTITUTE 함수 이용하여 달러와 단위값 분리하기 앞의 두 포스팅과 이어집니다 [구글 스프레드 시트 활용] 한화를 달러로 변환 �

moond.tistory.com

 

 

이전 포스팅에서 여기까지 해냈습니다.

 

 

K M B값으로 표현된 달러를 숫자로 변환한 후 환율에 맞춰 한화로 변환한 값을 한글 표시까지 해주는!

친절하고 복잡했는데 보이는 건 간단한 엑셀식입니다.

 

여기서 조금 더 친절한 고민이 듭니다.

 

누가 이걸 쓰다가 달러+단위값 영역에 값을 잘못 넣으면 어떡하지?

12'4M 이라고 쓰거나 123MMN 이라고 쓴다면?

왜 계산이 안되는지 모를텐데~!

 

그럼 왜 계산이 안되는지 알려주도록 합니다.

오늘 준비한 활용법은 숫자 값인지 검증하여 경고문구를 반환하는 식입니다.

 

 

우선 마지막으로 달러값 계산에 사용된 수식을 풀어서 한눈에 봅시다.

=MULTIPLY(LEFT(C8,(LEN(C8)-1)),VLOOKUP(RIGHT(UPPER(C8)),B17:C19,2,false))

위의 수식을 분해하면 이렇습니다.

 

이런 과정을 거쳐서 분리된 문자를 이래저래 곱해주는 식이었습니다.

자세한 내용은 이전 포스팅을 참고해주세요.

 

위의 식을 사용했을 때, 오류는 아래와 같은 케이스로 발생할 수 있습니다.

 

 

 

1. 숫자가 아닌 것을 잘못 입력하는 경우

 

2. 단위 뒤에 알파벳을 여러 개 붙인 경우

 

달러+단위값을 잘못적을 경우, 필연적으로 숫자 값에 숫자가 아닌 것이 섞여 들어갑니다.

(숫자 자체를 잘못 적었다면... 어쩔 수 없습니다. 그건 함수의 탓이 아니니까요.)

 

 

이걸 활용해서 잘못 입력했을 경우 숫자 값의 TRUE/FALSE를 판단하여

경고문을 반환하는 식을 만들어봅니다.

 

 

이전 포스팅에서 활용되었던 IF, ISNUMBER 함수를 활용하면 간단하게 만들 수 있습니다.

각 함수에 대한 자세한 설명은 아래의 링크에서 확인해주세요.

 

 

[구글 스프레드 활용] IF, ISNUMBER, SEARCH, SUBSTITUTE 함수 이용하여 달러와 단위값 분리하기

앞의 두 포스팅과 이어집니다 [구글 스프레드 시트 활용] 한화를 달러로 변환 후 달러에 빌리언Billion, 밀리언Million, 킬로(thousand, Kilo) 적용하기 영어로 숫자 단위를 표시하다 보면 헷갈리는 경우가 많습..

moond.tistory.com

 

우선 경고문 문구를 정해줍니다.

 

숫자+단위(ex.123M) 형태로 입력해주세요.

 

이 정도면 친절할 것 같습니다.

셀에 적어줍니다.

 

서비스가 별이 다섯개

 

그럼 이제 경고문 함수 식을 만들어봅니다.

완성된 식은 아래와 같습니다.

 


=IF(ISNUMBER(MULTIPLY(LEFT(C8,(LEN(C8)-1)),0)),C20,C21)

 

이 식을 차근차근 풀어보겠습니다.

우선, 파란색으로 표시된 LEFT(C8,(LEN(C8)-1) 함수는

이전 포스팅에 설명되었다시피,

마지막 자리의 단위 값 문자를 뺀 앞의 문자만 구하는 식입니다.

 

 

초록색으로 표시된 MULTIPLY이전 포스팅에 설명되었다시피

곱하기 함수입니다.

LEFT(C8,(LEN(C8)-1) 값과 숫자 0을 곱해줍니다.

굳이 0일 필요는 없습니다. 곱셈이 가능한 숫자면 다됩니다.

0으로 한건 취향입니다.

 

 

그럼 노란색으로 표시된 ISNUMBER 함수가 곱한 값이 숫자인지 판단해줍니다.

ISNUMBER 함수는 아래의 영역까지입니다.

ISNUMBER(MULTIPLY(LEFT(C8,(LEN(C8)-1),0))

 

알파벳이 섞여 들어가 곱해지지 않는다면 FALSE 값을 뱉을 것입니다.

ISNUMBER 함수에 대한 설명은 이전 포스팅을 참고해주세요.

 

ISNUMBER 함수가 토해내는 값이 TRUE인지 FALSE 인지를 판단하여

IF 함수가 지정된 값을 뱉어냅니다.

 


=IF(숫자인지 판단하는 논리식TRUE일 경우 공백FALSE일 경우 안내문)

 

결과적으로 이런 함수 식이 완성됩니다.

함수식 내에서 C20공백인 아무 칸이나 하나 찍은 것이고,

C21경고문구를 적어놓은 셀의 위치입니다.

 

그럼 이제 수식을 적용해봅니다.

틀린 게 확실하게 보이도록 달러+단위값을 입력하는 셀 아래에 적용하겠습니다.

 

 

그런데 된 건지 안된 건지 모르겠습니다.

 

달러+단위값에 틀린 값을 입력해봅니다.

 

야호

 

그런데 별로 경고문이 무시무시하지가 않습니다.

빨간색으로 서식을 적용해줍니다.

 

텍스트 색상을 선택하여 변경이 가능합니다.

 

 

 

색상을 빨간색으로 변경했더니 그럴싸합니다.

참고로 함수식으로는 문자만 가지고 오므로, 글자 및 셀 서식은 최종적으로 값이 표시될 셀에 적용해주세요.

 

 

드디어 완성입니다.

길고 긴 달러-한화 여정이 끝났습니다.

다음 포스팅에는 지금까지 포스팅된 달러-한화 수식을 총정리해보겠습니다.

 

반응형

댓글