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) | 0 | 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 :
'study' 카테고리의 다른 글
[Http] 상태 코드 정리 (0) | 2022.11.17 |
---|---|
[node.js] txt 파일 UTF-8 EUC-KR 인코딩 디코딩 방법 (0) | 2022.05.04 |
GRS80 UTM-K 좌표계 GPS 표준 좌표 WGS84로 변환하기 (0) | 2022.04.22 |
txt 파일을 cvs 파일로 바꾸는 방법 / txt, cvs 파일 엑셀 표로 만들기 (0) | 2022.04.22 |
JAVA_HOME 환경변수 설정 on 맥북 Mac Os X (0) | 2022.04.12 |