요즘에는 전자세금계산서나 각종 프로그램이 있어 어떨지 모르겠지만 예전에는 일일이 손으로 세금계산서를 적어서 발행 했죠. 최근에는 제가 세금계산서를 발행해 본지 꽤 되어서 도통 어떻게 되는지 모르겠습니다. 다만, 예전에 세금계산서를 엑셀 양식에 넣고 자동으로 금액도 넣고 사업자 등록증도 넣고 하는 엑셀 양식을 만들어 보기도 했습니다.
그때당시 가장 어렵다고 생각한 부분이 바로 금액(공급가액, 부가세)의 각란에 숫자를 분리하여 넣는게 어려웠습니다. 그래서 그때 기억을 되살려 숫자(금액)을 각 단위별로 추출하여 각셀마다 넣는 방법을 알아보겠습니다.
|
REPT 함수 사용하여 추출하기 |
수식 = MID(REPT(" ",11-LEN($B4))&$B4,COLUMN()-2,1)
※ 수식은 전체 셀에 동일하게 적용 합니다.
위 수식은 금액의 자리수의 부족분을 REPT 함수로 추가하여 11자리를 만들고 MID 함수로 각 자리의 숫자를 추출(분리) 합니다.
☞ 수식설명
1. REPT 함수 & 숫자 : 백억(11자리)에서 숫자길이(LEN) 만큼 뺀 수만큼 숫자앞에 붙여 줌
2. COLUMN 함수 : 열방향으로 자리수가 1씩 증가하도록 함
3. MID 함수 : 11자리로 만들어진 문자를 COLUMN() 자리수 만큼 추출
※ 위 방법이 현재로는 가장 간단한 방법인것 같습니다. 이해도 쉽고 수식도 단순합니다. 그렇지만 몇가지 다른 예를 들어 같은 결과를 얻어 보겠습니다.
| LEFT, RIGHT 함수로 추출하기 |
수식 = IF(14-COLUMN()>LEN($B11),"",LEFT(RIGHT($B11,14-COLUMN()),1))
☞ 수식설명
1. 14 - COLUMN 함수 : 금액 단위에 대한 자리수 반환(우측기준)
2. RIGHT 함수 : 위에서 반환된 자리수 만큼 우측의 숫자 추출
3. LEFT 함수 : RIGHT 함수에서 추출된 숫자의 좌측 1번째 숫자 추출
4. IF 함수 : 해당 셀의 금액단위가 금액 자리수보다 크면 "" 반환, 아니면 LEFT 결과 반환
| MID 함수로 추출하기 |
수식 = IF(LEN($B18)+COLUMN()-13<=0,"",MID($B18,LEN($B18)+COLUMN()-13,1))
☞ 수식설명
1. LEN 함수 + COLUMN 함수 - 13 : 금액 단위에 대한 자리수 반환(좌측기준)
2. MID 함수 : 위에서 반환된 자리수의 숫자를 추출
3. IF 함수 : 금액 단위에 대한 자리수가 음수(-) 인 경우 "" 반환, 아니면 MID 결과 반환
위 수식의 핵심함수?
위 수식의 공통점은 자리수가 1개식 증가할때 COLUMN 함수를 사용 하여 해당 숫자를 추출하는 것입니다.
물론 LEN 함수로 금액의 자리수를 알아내는 것도 공통적으로 들어가는 함수입니다.
COLUMN 함수는 1월, 2월, 3월.... 이렇게 월(일)별로 자료를 입력하는 경우에도 일일이 값을 입력하지 않고 숫자를 입력 할 수 있어 종종 사용되니 다른 수식과 응용해서 사용해 보세요.
| 관련글 보기 |
| | | ||
첨부파일 보기
'EXCEL > 함수' 카테고리의 다른 글
[엑셀] VLOOKUP 함수, HLOOKUP 함수 (0) | 2016.12.30 |
---|---|
[엑셀] 텍스트(문자) 붙이고 줄바꿈 하기 (CHAR 함수) (0) | 2016.12.29 |
[엑셀] 행번호 열번호 ( ROW함수, COLUMN 함수) 활용하기 (0) | 2016.12.29 |
[엑셀] 숫자를 한글로 변환하기 (NUMBERSTRING함수, 숫자서식) (0) | 2016.12.25 |
[엑셀] 배열함수 SUMPRODUCT 함수 (0) | 2016.12.25 |