본문 바로가기

dev

[sheetJS] 엑셀 날짜형식 데이터 숫자출력 문제

 

SheetJS를 사용해 엑셀데이터를 작업하다보면 날짜값이 난데없이 숫자로 바뀌어 들어올 때가 있다

 

엑셀에서 Ctrl+`(백틱) 을 눌러보면 데이터형식이 날짜일 때 엑셀내에서 원시데이터(raw data)로

변환되어 그 값이 읽어지는 문제였다

 

처음에 XLSX.read를 사용해 시트를 가져올 때

 

cellDates: true, dateNF: "yyyy-mm-dd"

 

이 옵션을 넣어 raw데이터일 경우 날짜형식으로 변환해 읽어오게 한다

 

 

그리고 sheet_to_json으로 데이터를 뽑아보면 dateNF가 적용되지 않고 date형식으로 뽑아지는데

 

 

sheet_to_json 뒤에 raw: false 옵션을 줘야 지정한 형식으로 제대로 가져오게된다

 

참고 : https://github.com/SheetJS/sheetjs/issues/718