xlsx 모듈 설치
$npm install xlsx
@breif xlsx 모듈추출
const xlsx = require( "xlsx" );
@breif 가상의 엑셀파일을 생성
const book = xlsx.utils.book_new();
첫번째 방법 (aoa_to_sheet)
const doctors = xlsx.utils.aoa_to_sheet( [
[ "학과", "직급", "이름", "나이" ]
, [ "흉부외과", "병원장", "주전", "67" ]
, [ "흉부외과", "교수", "천명태", "52" ]
, [ "흉부외과", "치프", "도재학", "39" ]
, [ "소아외과", "레지던트", "장겨울", "29" ]
, [ "산부인과", "레지던트", "추민하", "34" ]
, [ "산부인과", "레지던트", "명은원", "28" ]
, [ "신경외과", "교수", "민기준", "55" ]
, [ "신경외과", "치프", "용석민", "33" ]
, [ "신경외과", "레지던트", "안치홍", "38" ]
, [ "신경외과", "레지던트", "허선빈", "31" ]
, [ "응급의학과", "조교수", "봉광현", "40" ]
, [ "응급의학과", "펠로우", "배준희", "31" ]
] );
넓이 지정
doctors["!cols"] = [
{ wpx : 130 } // A열
, { wpx : 100 } // B열
, { wpx : 80 } // C열
, { wch : 60 } // D열
]
xlsx.utils.book_append_sheet( book, doctors, "DOCTOR" );
두번째 방법 (json_to_sheet)
const nurses = xlsx.utils.json_to_sheet( [
{ A : "학과", B : "직급", C : "이름", D : "나이" }
, { A : "흉부외과", B : "PA간호사", C : "소이현", D : "33" }
, { A : "소아외과", B : "PA간호사", C : "한현희", D : "29" }
, { A : "산부인과", B : "분만실간호사", C : "한한승주현희", D : "41" }
, { A : "산부인과", B : "PA간호사", C : "은선진", D : "36" }
, { A : "간담췌외과", B : "수간호사", C : "송수빈", D : "45" }
, { A : "간담췌외과", B : "병동간호사", C : "이영하", D : "35" }
, { A : "간담췌외과", B : "병동간호사", C : "김재환", D : "28" }
, { A : "간담췌외과", B : "PA간호사", C : "국해성", D : "32" }
, { A : "간담췌외과", B : "이식코디네이터", C : "함덕주", D : "37" }
, { A : "신경외과", B : "PA간호사", C : "황재신", D : "39" }
, { A : "응급의학과", B : "응급실간호사", C : "선우희수", D : "26" }
], { header : ["A", "B", "C", "D"], skipHeader : true } );
넓이 지정
nurses["!cols"] = [
{ wpx : 130 } // A열
, { wpx : 100 } // B열
, { wpx : 80 } // C열
, { wch : 60 } // D열
]
xlsx.utils.book_append_sheet( book, nurses, "NURSES" );
마지막 엑셀파일을 생성하고 저장한다.
xlsx.writeFile( book, "dramatis_personae.xlsx" );