線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2160
推到 Plurk!
推到 Facebook!

Dataset export to excel(CSV)

答題得分者是:Chance36
junlin
初階會員


發表:66
回覆:94
積分:42
註冊:2002-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-07 21:27:46 IP:140.129.xxx.xxx 未訂閱
我先把資料匯出成XXX.csv後,讓使用者可以用EXCEL來開啟檔案, 但如果有欄位的第1碼是0的話,那使用者用EXCEL看的資料是0 有沒有辦法對.CSV指定所有的匯出資料都是字串??? ex: 0121345 --> 121345 發表人 - junlin 於 2004/04/07 21:29:40
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-07 22:38:31 IP:203.204.xxx.xxx 未訂閱
引言: 我先把資料匯出成XXX.csv後,讓使用者可以用EXCEL來開啟檔案, 但如果有欄位的第1碼是0的話,那使用者用EXCEL看的資料是0 有沒有辦法對.CSV指定所有的匯出資料都是字串???
junlin 你好 1.欄位中只要有任何一碼不是數值字元的話(空白不算)則該欄位即為文字欄位,並不是像你說的第1碼是0的話,那使用者用EXCEL看的資料是0,也就是說欄位內容全部都是數字或' -,.'等符號且可完整轉換為數值型態時,Excel就會把它視數值欄位。 2.由於CSV格式是以','分隔欄位值,以Enter分隔記錄的一種資料儲存格式,並沒有額外的資料欄可供記錄另外的格式,若欄位值皆是數值字元的文字,由Excel開啟後,Excel會把它解為數值欄位。 3.即然匯出的資料是要以Excel來開啟的,為何不直接匯出為*.xls的格式呢?這樣不是更好控制嗎?
junlin
初階會員


發表:66
回覆:94
積分:42
註冊:2002-03-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-04-08 19:48:29 IP:140.129.xxx.xxx 未訂閱
chance36 thanks for your reply i use ole to export to excel, 但是出現了一個問題 那就是excel.quit後,從工作管理員去看,EXCEL並沒有被free掉 所以我如果export10個檔案,工作管理員就會出現10個EXCEL 我的source如下: if (display = False) and (filename<>'') then begin Excel.WorkSheets[1].saveas(FileName); Excel.ActiveWorkBook.Saved := True; Excel.WorkBooks.Close; Excel.Quit; end;
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-04-08 20:06:35 IP:211.20.xxx.xxx 未訂閱
junlin 你好
if (display = False) and (filename<>'') then
begin
  Excel.WorkSheets[1].saveas(FileName);
  Excel.ActiveWorkBook.Saved := True;
  Excel.WorkBooks.Close;
  Excel.Quit;
  Excel:=unassigned; 
end;     //最後要記得加上這一句    CoUninitialize ;    
系統時間:2024-05-17 12:42:08
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!