[問題] VBA存讀CSV格式的問題

作者: winnina1 (Jtin 介)   2015-03-07 17:08:06
(若是和其他不同軟體互動之問題 請記得一併填寫)
軟體:EXCEL
版本:2007
存取CSV的方法如下:
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" &
"data_001" & ".csv", _
FileFormat:=xlCSV, CreateBackup:=False
一開始發現的問題是 日期格式會跳掉
我需要的是yyyy/mm/dd的格式 或者是 mm/dd/yyyy的格式 去灌入其他程式使用
但一開始存檔之後 只要再開啟檔案 就會變成 yyyy/m/d的格式
因此我試著把他用文字表示yyyy/mm/dd的型態,去灌入其他程式做使用
結果讀取出現bug
但是我只需要手動把csv檔案開啟後 存檔
就可以正常讀取
但因為資料量太多 實在無法一一做存檔動作
想問問板上大大 在儲存CSV檔的時候,VBA碼該做怎樣的設定才能夠讓原有格式保留
作者: soyoso (我是耀宗)   2015-03-07 23:05:00
測試一下存成csv會是以原有格式保留,只是如果在以excel開啟時才又跳回yyyy/m/dcsv可以記事本開啟,就會看到以原有格式保留http://youtu.be/-Tz28WoAyU8 這是測試的影片
作者: winnina1 (Jtin 介)   2015-03-10 20:54:00
恩 soyoso大講的是對的 存檔時他確實還是存成對的格式只是我還是無法灌到其他程式裡...除非我再手動存檔一次用VBA寫了批量開啟存檔的功能 也無法改善
作者: soyoso (我是耀宗)   2015-03-10 22:28:00
http://goo.gl/RsV9hp 那如果用for output as #1的方式輸出,試試 http://goo.gl/RsV9hp
作者: winnina1 (Jtin 介)   2015-03-11 19:11:00
找到問題了,其實是因為這樣子的格式會多出空格但不知道怎樣把空格消去資料格式會長這樣 02/02/2009,1345,5555 ,6666 ,
作者: soyoso (我是耀宗)   2015-03-11 20:38:00
那是否可以提供檔案看看呢?
作者: winnina1 (Jtin 介)   2015-03-11 20:54:00
作者: soyoso (我是耀宗)   2015-03-11 21:34:00
是否有在excel檔就有資料的檔案呢?想從檔案轉出時看一下是否是原始資料的問題
作者: winnina1 (Jtin 介)   2015-03-11 22:03:00
作者: soyoso (我是耀宗)   2015-03-11 22:25:00
那把Selection.NumberFormatLocal = "0_ "改為Selection.NumberFormatLocal = "0" 試試測試轉出後就沒有後面空格了
作者: winnina1 (Jtin 介)   2015-03-11 22:46:00
成功了!!!!!!!感謝soyoso大!!!!!!!!!
作者: soyoso (我是耀宗)   2015-03-11 22:49:00
^^

Links booklink

Contact Us: admin [ a t ] ucptt.com