台灣最大程式設計社群網站
線上人數
661
 
會員總數:244663
討論主題:188766
歡迎您免費加入會員
討論區列表 >> C# >> EXCEL轉檔的問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
EXCEL轉檔的問題
價值 : 50 QP  點閱數:186 回應數:6

樓主

Steven HO
初學者
80 17
405 55
發送站內信

有個問題請求大大

我使用下列程式讀取EXCEL



在最後一行會出問題,問題其實就是原本objValue[2, 1]是個時間欄位

在Excel.Range xlsRange時讀出來會自動改為String,就會變數字

除非我把[2, 1]欄位改成數字欄位填入日期,不然會出問題

但是這又是另一個系統吐出來的資料,我沒辦法去改這個欄位格式

有甚麼好建議的方法嗎??

搜尋相關Tags的文章: [ Excel ] ,
本篇文章發表於2019-04-15 14:52
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
作者回應

Steven HO
檢舉此回應
讀取xls直接轉檔成csv就沒這問題

string strFileName = "C:\\Log" + "\\" + System.DateTime.Now.ToString("yyyyMMddHHmm");
xlsSheet.SaveAs(Filename: strFileName, FileFormat: Microsoft.Office.Interop.Excel.XlFileFormat.xlCSV);

可是我還需要更改裡面資料合併,無法使用這個方法
拜託大家了
本篇文章回覆於2019-04-15 15:36
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

春天
檢舉此回應
看不太懂你的主要問題是什麼,若說是讀取的格式問題 你已經解決了
本篇文章回覆於2019-04-15 16:27
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

春天
檢舉此回應
Excel Cell Format
本篇文章回覆於2019-04-15 16:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

Steven HO
檢舉此回應
簡單的說

我要寫一個xls轉csv檔案程式

1.一樓跟爾樓的程式都可以轉換成csv檔,但是要合併欄位所以要用一樓的程式重新組合再匯出成csv檔

2.用一樓的程式,轉換後日期時間欄位會變數字(網路上有說明),用二樓的則不會,但我必須要一樓的程式才能合併欄位

3.其原因就出在於欄位格式如果是DateTime要轉成String的問題

4.所以我在想,在一樓的程式裡,我可不可以一開始就規定日期時間的欄位格式是string就好了

5.奇怪的是,用二樓的程式竟然沒這問題

請大大指點嚕
本篇文章回覆於2019-04-15 19:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

春天
檢舉此回應
格式讀取問題目前沒測試不知道,但是你可以先轉成Csv
讀進正確格式後再整理資料轉出整理後的Csv
本篇文章回覆於2019-04-16 10:13
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

Steven HO
檢舉此回應
我自己搞定了
決定不要用excel的dll

改用開啟OleDbConnection連線接入DataTable
在DataTable裡,甚麼都是String
就順利解決嚕

我把程式大概列在下方,給有興趣的使用者看看


本篇文章回覆於2019-04-16 13:37
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.