iT邦幫忙

0

網頁-匯出轉存成Excel

tanpen 2012-07-02 11:55:0513435 瀏覽

用網頁的方式匯出或轉存成Excel,
之前我用的方法有二個,
1個是用類似複製的方式,把畫面物件ID的內容寫到EXCEL中,大致如下
window.clipboardData.setData("Text",document.all('table1').outerHTML);
try
{
var ExApp = new ActiveXObject("Excel.Application")
var ExWBk = ExApp.workbooks.add()
var ExWSh = ExWBk.worksheets(1)
ExApp.DisplayAlerts = false
ExApp.visible = true
}
它會自己開出EXCEL,內容出現在EXCEL中,不會產生檔名
第2個是
Response.AddHeader "content-disposition","attachment; filename=TEST.xls"
Response.Charset ="BIG5"
Response.ContentType = "Content-Language;content=zh-tw"
Response.ContentType = "application/vnd.ms-excel"
它會出現另存檔案或開啟excel的對話框,可以產名檔名,分頁名

我目前有一個程式需求是銀行的上傳明細,巿要求格式內容
而目前用第2種方式,是比較符合狀況的,但之前改了一些程式,變成又不能用了..

想請問,還有其它方法可以匯出excel的嗎?必需能指定excel的檔名,及儲存格內容..

謝謝

slime iT邦大師 1 級 ‧ 2012-07-03 03:26:12 檢舉
衍生思考:

可以匯出 .csv 就好嗎?
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
4
pqr0007
iT邦研究生 1 級 ‧ 2012-07-02 19:25:27

Excel 最近功能很多, 好像也可以打電話?? 發Sim??...可能, Excel 需要上很多課!!...

4
la6972
iT邦好手 1 級 ‧ 2012-07-03 09:54:31

產生Excel文件

此範例僅可在IE Client端執行
在裝有XP2的IE瀏覽器上會遇到安全性訊息的提示,允許後便可執行(無法以Mark of the Web處理)
<script language="JavaScript" type="text/javascript">
var exApp = new ActiveXObject("Excel.Application");
exApp.Visible=true;
var oWB = exApp.Workbooks.Add();
//oWB.Worksheets(1).Activate; //若有多張工作表時改用此法
var exWbook = oWB.ActiveSheet;
exWbook.Columns("A").columnwidth=30;
exWbook.Columns("A").WrapText = true;
exWbook.Columns("B").columnwidth=30;
exWbook.Columns("B").WrapText = true;
exWbook.Range("A1:B1000").NumberFormat = "0";
exWbook.Range("A1:B1000").HorizontalAlignment = -4131;
exWbook.Cells(1,1).Interior.ColorIndex="15";
exWbook.Cells(1,1).value="第一欄, 第一格";
exWbook.Cells(2,1).value="第一欄, 第二格";
exWbook.Cells(1,2).value="第二欄, 第一格";
exWbook.Cells(2,2).value="第二欄, 第二格";
exWbook.Name="以Javascript產生的工作表";
</script>

4
sonia
iT邦新手 2 級 ‧ 2012-07-03 10:57:19

用免費的元件NPOI吧!它很好用
這裡有介紹 http://www.cnblogs.com/tonyqus/archive/2009/03/27/1422734.html

4
sula3065408
iT邦研究生 1 級 ‧ 2012-07-03 12:57:44

我是用Perl寫CGI在伺服器上產生暫時的檔案,把連結更新寫回網頁顯示。

我要發表回答

立即登入回答