제2의 비엔지니어 인생관을 꿈꾸며

Posted
Filed under C#

간혹 출력한 엑셀데이터를 서버에 다른 환경에서 사용해야 할 경우 아무래도 시트명으로 읽어 들여야
하기 때문에 서로 업무상, 시트명을 통일하거나 아니면 입맛에 맞게 바꿔야하는경우 가 있다.
(지정하지 않으면,일반적으로  파일명이 시트명이 된다.)

기본 서버객체를 이용하지 않는 이상, 시트명은 지정이안된다, 그럼 서버객체를 이용하면 되지 않느냐?
이용해도 되지만 , 서버에 설치 와 권한 설정 등..귀차니즘 발동, 물론 업무에따라 중요도에 따라 서버객체를
를 이용해도된다. 

(아래는 서버 객체를 이용하지 않고 http header를 이용해서 웹문서를 엑셀문서로 출력시킨다.)

아래는 Http Header 를 excel 로 지정하고 ,  xml로 문서의 포맷을 정하고 html로 출력하여 Excel 문서로 인식하게끔 fake? 하게한다.



<%   
     //  Classic ASP  , ASP.Net , PHP , JAVA 등  서버단 코드에 맞게 엑셀 헤더 설정 
     //  아래 파랑색 코드 그대로 복사 붙이기한후 맨 아래는 기존에 Table 그대로 출력해준다
     //  아래 빨강색 sheet1 부분만 필요한 이름으로 수정
%>
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<!--[if gte mso 9]><xml>
 <o:DocumentProperties>
  <o:LastAuthor>JUBOB</o:LastAuthor>
  <o:Created>2999-09-02T07:46:35Z</o:Created>
  <o:LastSaved>2999-09-02T07:46:35Z</o:LastSaved>
  <o:Version>10.2625</o:Version>
 </o:DocumentProperties>
 <o:OfficeDocumentSettings>
  <o:DownloadComponents/>
  <o:LocationOfComponents HRef="file:///I:\"/>
 </o:OfficeDocumentSettings>
</xml><![endif]-->
<!--[if gte mso 9]><xml>
 <x:ExcelWorkbook>
  <x:ExcelWorksheets>
   <x:ExcelWorksheet>
    <x:Name>sheet1</x:Name>
    <x:WorksheetOptions>
     <x:DefaultRowHeight>270</x:DefaultRowHeight>
     <x:Selected/>
     <x:DoNotDisplayGridlines/>
     <x:ProtectContents>False</x:ProtectContents>
     <x:ProtectObjects>False</x:ProtectObjects>
     <x:ProtectScenarios>False</x:ProtectScenarios>
    </x:WorksheetOptions>
   </x:ExcelWorksheet>
  </x:ExcelWorksheets>
  <x:WindowHeight>12720</x:WindowHeight>
  <x:WindowWidth>24960</x:WindowWidth>
  <x:WindowTopX>120</x:WindowTopX>
  <x:WindowTopY>30</x:WindowTopY>
  <x:ProtectStructure>False</x:ProtectStructure>
  <x:ProtectWindows>False</x:ProtectWindows>
 </x:ExcelWorkbook>
</xml><![endif]-->
</head>
<body>
      <Table> 
         <tr>
                <td> 테이블로 만든 데이터 그대로 출력</td>
         </tr>
      <Table>
</body>
</html>
2018/03/21 14:31 2018/03/21 14:31