본문 바로가기

study

Excel how to custom Number format 숫자 서식 사용자 지정 커스텀하기 / -0 을 0으로 바꾸기 음수

반응형

 

node.js + typescript + exceljs 로 엑셀 파일 생성을 하던 중, 

db에서 받은 데이터는 1000, 0, -500  이렇게 실수인 경우 모두 - 를 붙여서 출력해야 했다. 

 

numFmt : '#,##0' 은 123,400 이렇게 나오고

numFmt : '-#,##0' 은 -123,500 이렇게 나온다. 그래서 처음에는 '-#,##0'으로 사용했다. 

그런데 내가 받은 데이터가 1000, 0, -500 이라면 '-#,##0'이 적용되어 나오는 형식이 아래 박스의 결과였다. 

 

The data I got from db was [100, 0, -500] and I had to show them in Excel file as negative. so first I tried exceljs numFmt '-#,##0' and the result was like the box below.

 

-1,000
-0
--500 

이렇게 정말 말그대로 "-" 마이너스 표시만 데이터 앞에 붙여졌다. 

Literally it just added "-" to the data value. so I customized the number format. 

 

-1을 곱해서 표시를 해야할까 했는데 Excel 숫자 형식에서 이런 "연산"의 형태는 찾지 못했다. (못 찾은 걸수도..) 

그래서 찾아본 숫자 형식 사용자 지정하는 방법 ! 

 

 

공식 how to cutomize format of number

양수 (Positive) 음수 (negative) text 텍스트
#,##0; [Red]-#,##0; 0; @

 

이렇게 양수, 음수, 0일 경우, Text 를 4가지 session으로 나누어 지정해 줄 수 있다. 

나는 데이터가 양수도 음수로 (3,000 -> -3,000) 음수도 음수로 (-1,000 -> -1,000), 0은 0 그대로 나타내고 싶으니 아래와 같이 작성했다. 

It has four sessions and you can decide what to use in each session. I need all the data to be negative but 0  and 0 just need to be 0 so my customized format is like below.

 

numFmt : '-#,##0;-#,##0;0;@'

 

 

 

It works! 

 

 

 

Reference : 

http://choesin.com/excel%EC%97%90%EC%84%9C-%EC%9D%8C%EC%88%98%EB%A5%BC-%ED%91%9C%EC%8B%9C%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95%EC%9D%84-%EB%B3%80%EA%B2%BD%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

 

반응형