作者NealCaffery (NealCaffery)
看板Office
標題[問題] 如何用VBA操作text to column最後一步
時間Wed Mar 13 17:56:08 2019
(若是和其他不同軟體互動之問題 請記得一併填寫)
軟體: excel
版本: 2016
最近因為工作開始學習VBA,有一個非常困擾我的問題,想問問板上有沒有能解答。
之前我都是手動將txt檔的資料手動轉到我excel的表格,但資料量越來越多的狀況下我了
寫一個能自動轉檔的程式,然而程式碼完成後,我發現一個問題。
Text file裡的資料大概是這種形式的
08274627, 0321, 0321, 0032, 0000
我先將整個txt的每一行寫入A1, A2, A3.....
然後再用巨集錄製的text to column(delimiter)將其分欄,但我發現手動時我可以在tex
t to column的最後一個步驟將每一列的data format直接選成text,但錄製巨集時卻少了
這個步驟。
如此一來,我data輸入時都是以general的方式來分行,導致我有0開頭的資料都變指數表
現或消失。我有試過在text to column前後用numberformatlocal來將儲存格轉成text,
但都沒有用。
沒有作用的原因,我認為是因為資料已經先被轉成general(0已經消失),所以再用number
formatlocal也沒用,而text to column前用numberformatlocal沒用是因為text to colu
mn操作完後資料又會被轉成general。
我的問題是,有人知道怎麼用code來操作text to column,且避免我的資料在分行時直接
以general存入,而是以text存入
真的非常願意看完的人,小弟誠心謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.10.196.156
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1552470971.A.800.html
※ 編輯: NealCaffery (39.10.196.156), 03/13/2019 17:57:14
※ 編輯: NealCaffery (39.10.196.156), 03/13/2019 17:58:21
1F:→ soyoso: 這方面在range.texttocolumns的fieldinfo內調整datatype 03/13 18:43
2F:→ soyoso: 如果問的是指剖析在指定datatype上為不定數量都要為文字的 03/13 18:45
3F:→ soyoso: 話,可寫個迴圈,變數()=array(迴圈變數,2)的方式 03/13 18:47
4F:→ soyoso: 再於fieldinfo:=變數 03/13 18:47
5F:→ NealCaffery: S大 謝謝你的幫忙,我會來試試! 03/14 07:24