【求助】請問匯入文字檔的技巧

顯示結果從第 1 筆 到 6 筆,共計 6 筆
  1. #1
    平風造雨 cinta3344 的大頭照
    註冊日期
    2002-04-11
    討論區文章
    72

    【求助】請問匯入文字檔的技巧

    小弟目前有將cobol資料庫(其實就是一堆文字檔)轉出
    進RDBMS的需求,因此想借助EXCEL將欄位裁切出來
    但目前匯入文字檔僅有「固定寬度」這個方法較能準確
    將欄位切割(因為以字元辨識切割常會失敗,如果用COBOL
    將分隔字元加在文字檔也是可以,但非常麻煩,需每個檔案
    幫他寫一支轉文字檔,因此該方法不考慮)。
    說了這麼說,其實我想做的就是寫一支可動態輸入欄寬的巨集
    例如我在一個inputbox輸入"2,3,12,1......."或在儲存格a1~aX
    輸入相關欄位寬度便可自動轉入,否則看著下圖一個一個切,小弟
    可能會得亂視
    不知各位可有什麼好方法呢?小弟先行謝過了。


    附加圖片 附加圖片 azcey-01.jpg  
    夢裡非夢斷腸魂 黃梁猶怯武林途
    豪情一朝風雲起 英雄血灑江湖路

  2. #2
    Take it easy~ leonchou 的大頭照
    註冊日期
    2001-05-03
    討論區文章
    3,244
    cinta兄, 這樣看起來...
    難道不是空白分隔嗎? 是的話
    勾選"連續分隔字元視為單一分隔.."
    <span style="filter:glow(color=3CB371,strength=4);width:100%;color:#3CB371;font-family:Comic Sans MS;font-size:18;font-weight:bold">No desire, No pain.</span><p><span style="filter:glow(color=FF4500,strength=3);width:100%;color:#FF8C00;font-family:Comic Sans MS;font-size:18;font-weight:bold">Before Asking, You should RTFH, RTFM, STFW...</span>

  3. #3
    平風造雨 cinta3344 的大頭照
    註冊日期
    2002-04-11
    討論區文章
    72
    最初由 Leon Chou 發表
    cinta兄, 這樣看起來...
    難道不是空白分隔嗎? 是的話
    勾選"連續分隔字元視為單一分隔.."
    抱歉,我沒有把問題描述清楚∼
    因為是早期的系統,所以連一個空格都捨不得浪費
    所以由COBOL的公用程式匯出時不見得會有空格把兩
    個欄位分開,如果要加入空格,還是要另外寫程式
    可是一樣都是寫程式,用VBA會來的快很多
    我曾觀察過匯入的巨集錄製如下:
    array(x,x),array(x,x)

    array(x,y,z,a,b,c......)
    我目前暫時的solution是將欲分割的寬度寫在cell上
    在逐一填入array(依欄位的多寡要常修改巨集),如:
    array(cell(1,1),cell(2,1).....)
    但LEO兄與沙拉油兄(應該都比我年輕吧 )
    屢屢有令人驚豔的解法,因此想到PCZONE來
    請問各位高見,如有解法,還請不吝賜教,先行謝過囉!
    夢裡非夢斷腸魂 黃梁猶怯武林途
    豪情一朝風雲起 英雄血灑江湖路

  4. #4
    Take it easy~ leonchou 的大頭照
    註冊日期
    2001-05-03
    討論區文章
    3,244
    這樣.. 你看合不合用吧--

    Option Base 1
    Public Sub import_text()
    Dim Array1() As Variant
    txtfile = "C:\temp\testdata.txt"
    i = 1
    While Cells(i, 1) <> ""
    ReDim Preserve Array1(i)
    Array1(i) = Array(Cells(i, 1), 1)
    i = i + 1
    Wend
    Workbooks.OpenText txtfile, DataType:=xlFixedWidth, FieldInfo:=Array1
    End Sub

    請將欄寬(正確的說應該是每一欄的起始位置)
    輸入在 A 欄, 要從 A1 開始。
    注意: 若從第1個字元就要匯入, 則 A1 要輸入 0.
    再改一下 txtfile 變數的值, 就可以Run了。

    容我稍稍偷懶一下--
    程式裡沒有對 A 欄資料做任何檢查,
    你自個兒留意唄
    <span style="filter:glow(color=3CB371,strength=4);width:100%;color:#3CB371;font-family:Comic Sans MS;font-size:18;font-weight:bold">No desire, No pain.</span><p><span style="filter:glow(color=FF4500,strength=3);width:100%;color:#FF8C00;font-family:Comic Sans MS;font-size:18;font-weight:bold">Before Asking, You should RTFH, RTFM, STFW...</span>

  5. #5
    Take it easy~ leonchou 的大頭照
    註冊日期
    2001-05-03
    討論區文章
    3,244
    不過.. 有點好奇的是,
    你怎知道每次每欄切割的位置..
    還得每次輸入...
    那麼多欄, 難道一個一個算?


    <span style="filter:glow(color=3CB371,strength=4);width:100%;color:#3CB371;font-family:Comic Sans MS;font-size:18;font-weight:bold">No desire, No pain.</span><p><span style="filter:glow(color=FF4500,strength=3);width:100%;color:#FF8C00;font-family:Comic Sans MS;font-size:18;font-weight:bold">Before Asking, You should RTFH, RTFM, STFW...</span>

  6. #6
    平風造雨 cinta3344 的大頭照
    註冊日期
    2002-04-11
    討論區文章
    72
    最初由 Leon Chou 發表
    不過.. 有點好奇的是,
    你怎知道每次每欄切割的位置..
    還得每次輸入...
    那麼多欄, 難道一個一個算?
    謝謝,正合所用呢。
    比我土法所練出來的鋼好多了...

    至於欄寬有FD表可以看啊
    只要請工讀生一一輸入完
    insert進TABLE就OK了....
    夢裡非夢斷腸魂 黃梁猶怯武林途
    豪情一朝風雲起 英雄血灑江湖路

類似的主題

  1. 批次檔可以讀取文字檔的內容當作變數嗎?
    作者:kayguay 所在討論版:-- Windows 討 論 版
    回覆: 0
    最後發表: 2007-06-15, 12:54 PM
  2. 請問有沒有軟體可以偵測文字檔的編碼?
    作者:cpthk 所在討論版:-- 其 他 軟 體 討 論 版
    回覆: 3
    最後發表: 2005-02-23, 09:40 PM
  3. 【求助】一些下載下來的文字檔用筆記本開會有亂碼的望提
    作者:dai 所在討論版:-- OFFICE 相 關 軟 體 討 論 版
    回覆: 1
    最後發表: 2003-06-15, 01:26 PM
  4. 請問有沒有程式可以一併搜尋很多個文字檔的某個文字?
    作者:cpthk 所在討論版:-- 其 他 軟 體 討 論 版
    回覆: 5
    最後發表: 2002-08-28, 05:17 PM
  5. 請問將圖片轉成文字檔的軟體叫什麼名字
    作者:Jad72 所在討論版:-- 其 他 軟 體 討 論 版
    回覆: 2
    最後發表: 2002-01-08, 01:32 PM

 

Workbooks.OpenText 文字亂碼

發表文章規則

  • 不可以發表新主題
  • 不可以回覆文章
  • 不可以上傳附加檔案
  • 不可以編輯自己的文章
  •