[엑셀] 엑셀에서의 IF ELSE 구문(다중 IF 함수)
코딩을 하다 보면, 조건문 if 이하 외의 다른 경우에 대해서는 else 이하로 작성하는데,
엑셀에서는 if else로 따로 구분하지 않는다.
엑셀에서의 입력 형식은 IF(조건문,참인경우,거짓인경우) 로,
else 에 해당하는 구문을 '거짓인 경우' 로 입력받는다.
아래와 같이 날짜 형식이 여러가지로 중구난방인 날짜 컬럼을 정렬하고 싶다..
살펴보니, 년월일 제일 마지막에 "/" 가 있거나 "|" 가 있는 등 또다른 문자가 있는 경우 날짜로 인식되지 못한다.
제일 마지막 문자를 구분하여 각 경우에 따라 일괄로 날짜를 정렬하고 싶다.
마지막 문자를 경우에 따라 구분하기 위해 다중 IF 함수를 활용하려고 한다.
마지막, 처음 문자를 추출하는 RIGHT, LEFT 함수 관련 글은 아래 게시글 참고
https://ryuhyun.tistory.com/52?category=1035446
[엑셀] 셀 텍스트 왼쪽으로부터, 오른쪽으로부터, 중간에서 일부 추출하기(LEFT, RIGHT, MID 함수)
엑셀에서 각 셀의 값을 위치 인덱싱을 통해 추출하는 방법이다. LEFT 함수는 셀의 왼쪽 끝으로부터 세고, RIGHT 함수는 오른쪽 끝으로부터, MID 함수는 중간부터 센다. LEFT, RIGHT 함수는 양 끝으로부
ryuhyun.tistory.com
제일 마지막 문자는 제일 오른쪽에 위치하므로, RIGHT 함수로 제일 마지막 문자를 추출해보자.
RIGHT(추출하고자 하는 셀, 추출하고자 하는 문자가 오른쪽으로부터 몇번째에 위치하는지)
제일 오른쪽의 값이 "/" 인 경우, "|"인 경우, 일반 숫자인 경우(날짜형식으로 정상적으로 입력된 셀)로 구분된다.
"/"인 경우(IF), "|"인 경우(IF)에는 제일 오른쪽에 있는 해당 문자를 제거하고,
일반 날짜형식 셀로 입력된 경우(ELSE)는 해당 셀을 그대로 반환하는 식을 작성하고자 한다.
마지막 문자를 제거하는 방법은 관련 게시글 참고
https://ryuhyun.tistory.com/72?category=1035446
[엑셀] 끝에서부터 n번째 글자 지우기,마지막 글자 지우기,첫 글자 지우기(LEFT,RIGHT, LEN 함수)
아래 글에서 RIGHT, LEFT, MID 함수를 통해 셀의 특정 번째 값을 추출하는 방법을 소개한 바 있는데, https://ryuhyun.tistory.com/52?category=1035446 [엑셀] 셀 텍스트 왼쪽으로부터, 오른쪽으로부터, 중간에서..
ryuhyun.tistory.com
위에 언급한 바와 같이 엑셀에서는 IF ELSE 를 구분하지 않고, IF(조건문,참일경우,거짓일경우) 로 구분하므로
아래와 같은 순서로 다중 IF문 함수식을 순서대로 작성해볼 수 있다.
1. 마지막문자가 "/"인 경우 제일 오른쪽에 있는 문자 제거 후 반환
IF(마지막문자가 "/" 인 경우, 제일 오른쪽에 있는 문자(/) 제거, 이외의경우)
-> IF(RIGHT(해당셀,1)="/",LEFT(해당셀,LEN(해당셀)-1),해당셀)
2. 마지막문자가 "|"인 경우 마찬가지로 제일 오른쪽에 있는 문자 제거 후 반환
- 앞선 식에서 '이외의 경우' 부분에 새로운 IF 문을 삽입하는 형태로 된다.
IF(마지막문자가 "/" 인 경우, 제일 오른쪽에 있는 문자(/) 제거, IF(마지막문자가 "|"인 경우, 제일 오른쪽에 있는 문자(|) 제거, 이외의 경우))
-> IF(RIGHT(해당셀,1)="/",LEFT(해당셀,LEN(해당셀)-1),IF(RIGHT(해당셀,1)="|",LEFT(해당셀,LEN(해당셀)-1),해당셀))
날짜를 일괄된 형식으로 변환하는 함수는 아래 게시글 참조.
https://ryuhyun.tistory.com/73
[엑셀] 날짜 형식으로 변환하기(TEXT 함수, yyyy-mm-dd)
엑셀에서 yyyy-mm-dd 의 일괄된 날짜 형식으로 변환하기 위해서는 TEXT 함수를 활용할 수 있다. 년월일 형태의 숫자가 표현되어 있는 셀을 대상으로 아래와 같이 입력하면 된다. TEXT(해당셀,"yyyy-mm-dd"
ryuhyun.tistory.com