ASP.NET 엑셀 출력 스타일
1. 기본 '텍스트 줄 바꿈' 속성 제외
기본 엑셀 출력 시 모든 셀에 '텍스트 줄 바꿈' 속성이 설정된다.
이를 방지하려면 아래와 같이 스타일을 설정한다.
<style type="text/css">
td { white-space:nowrap; }
</style>
2. 같은 셀에 2줄 표시
만약 특정 셀에서 같은 셀에 2줄 이상을 표시하고 싶을 때가 있다.
이럴 경우에는 아래와 같이 스타일을 설정한다.
<style type="text/css">
br { mso-data-placement:same-cell; }
</style>
Reponse.Write("<td>이번 셀에서는<br/>이 줄은 다음 줄에 표시</td>");
결과
이번 셀에서는
이 줄은 다음 줄에 표시
3. 기본 '텍스트 줄 바꿈' 속성 제외와 같은 셀 2줄 표시를 동시에 하고 싶은 경우
아래와 같이 스타일을 설정한다.
<style type="text/css">
td { white-space:nowrap; }
br { mso-data-placement:same-cell; }
.same { white-space:normal; }
</style>
Reponse.Write("<td>이번 셀에서는<br/>한 줄에 표시</td>");
Reponse.Write(@"<td class=""same"">이번 셀에서는<br/>이 줄은 다음 줄에 표시</td>");
결과
이번 셀에서는한 줄에 표시
이번 셀에서는
이 줄은 다음 줄에 표시
같은 셀에 2줄 이상 표시하려면 '텍스트 줄 바꿈' 속성이 설정되어야 하므로
원하는 셀에 same css를 설정하여 같은 셀에 표시할 수 있도록 해준다.
4. 숫자 형식 지정(자릿점 표시)
원하는 셀에 다음과 같이 스타일을 지정한다.
//number가 문자열인 경우에도 강제 지정
Response.Write(string.Format(@"<td style=""mso-number-format:'#,###';"">{0}</td>", number));
또는
//number가 숫자형식인 경우만 제대로 표시
Response.Write(string.Format("<td>{0:N0}"</td>, number));
5. 강제 문자열 형식 지정(숫자도 문자처럼 표시)
Response.Write(string.Format(@"<td style=""mso-number-format:'@';"">{0}</td>", string));
6. 한글 인코딩 설정
Response.Charset = "UTF-8";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
'C#' 카테고리의 다른 글
폴더 압축 (SharpZipLib 사용) (0) | 2017.11.28 |
---|---|
ClosedXML 사용 (0) | 2017.05.17 |
사진 이미지 관련 클래스 (0) | 2016.04.14 |
오라클 BLOB 등록 및 조회 (0) | 2016.04.14 |
다른 프로젝트의 Resources.resx 파일의 리소스에 접근하기 (0) | 2012.05.07 |