본문 바로가기

ASP.net with C# (웹폼)

C# 엑셀 셀 형식표(mso-number-format)

웹프로그래밍을 하다보면 데이터 엑셀다운을 구현하는 경우가 많습니다. 이 때 <table>태그를 사용하여 데이터 테이블을 만들고 엑셀형식으로 변환후 다운로드를 받는 과정에서 00001과 같이 숫자로만 구성된 문자일 경우 숫자 1 처럼 변환되어 난감한 경우가 있습니다. 이럴땐 엑셀의 셀에 해당하는 <td>태그의 스타일을 지정해주면 원하는 결과파일을 다운로드 하실 수 있습니다. 아래의 표에서 지정하실 셀 스타일을 확인하세요.

 

엑셀 셀 형식표

셀 스타일 결과
mso-number-format:"0" 정수
mso-number-format:"0\.000" 소숫점 3자리
mso-number-format:"\#\,\#\#0\.000" 콤마, 소숫점 3자리
mso-number-format:"mm\/dd\/yy" mm/dd/yy
mso-number-format:"mmmm\ d\,\ yyyy" April 12, 2019
mso-number-format:"m\/d\/yy\ h\:mm\ AM\/PM" D -T AMPM
mso-number-format:"Short Date" 01/03/2019
mso-number-format:"Medium Date" 01-mar-19
mso-number-format:"d\-mmm\-yyyy" 01-mar-2019
mso-number-format:"Short Time" 3:21
mso-number-format:"Medium Time" 3:21 am
mso-number-format:"Long Time" 3:21:36:00
mso-number-format:"Percent" 퍼센트, 소숫점 두자리
mso-number-format:"0%" 퍼센트, 소숫점 없음
mso-number-format:"0\.E+00" 과학적 표기법
mso-number-format:"\@" 문자
mso-number-format:"\#\ ???\/???" 분수(3자리 까지)
mso-number-format:"\0022£\0022\#\,\#\#0\.00" £12.76
mso-number-format:"\#\,\#\#0\.00_ \;\[Red\]\-\#\,\#\#0\.00\ "

2 decimals, negative numbers in red and signed
(1.56 -1.56)

예) <td style='mso-number-format:"\@"'>00001</td>

 

프로젝트의 성공을 기원합니다.

 

자료참고 : http://cosicimiento.blogspot.com/2008/11/styling-excel-cells-with-mso-number.html