返回列表 上一主題 發帖

[發問] vba 抓多個txt檔案的最後一行

本帖最後由 GBKEE 於 2013-7-22 18:24 編輯

回復 1# ilikeiceblue
如何抓取多個檔案連續匯入,可搜討論區尋看看.
  1. Sub Ex_匯入文字檔()
  2. Dim Fs As Object, d, s, i As Integer, ii As Integer
  3.     txt = "d:\TEST\TEST.TXT"                                    '文字檔目錄
  4.     Set Fs = CreateObject("Scripting.FileSystemObject").OpenTextFile(txt, 1)
  5.     d = Split(Fs.readall, Chr(10))                                  'Chr(10) 分割為陣列
  6.     Fs.Close                                                        '關閉文字檔
  7.      With ActiveSheet
  8.         .Cells.Clear                                                '清除所有資料
  9.         For i = 1 To UBound(d)                                      '陣列的第2元素開始
  10.             If Len(d(i)) = 0 Or i = UBound(d) Then                  'Len(d(i)) = 0->空白列(要的是上一個元素)
  11.                 s = d(IIf(i < UBound(d), i - 1, i))                 'i = UBound(d) ->陣列的最後元素
  12.                 s = Split(s, "  ")                                  '"  " 分割為陣列
  13.                 '61566.1459848279  36804.0605  7070  62             此字串以兩空格分隔
  14.                 ii = Application.CountA(.[a:a])                     '計算A欄的資料數
  15.                 ii = IIf(ii = 0, i, ii + 1)                         '沒有=第1列,有資料須往下一列
  16.                 .Cells(ii, "a").Resize(1, UBound(s) + 1) = s
  17.             End If
  18.         Next
  19.     End With
  20. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 做好事不能少我一人,做壞事不能多我一人。
返回列表 上一主題