返回列表 上一主題 發帖

[發問] 從TXT檔尋找特定的數位,然後轉寫到Execl

[發問] 從TXT檔尋找特定的數位,然後轉寫到Execl

從TXT檔尋找特定的數位,例如由左面開始數起在 33digit - 37 digit, 尋找30001, 當乎合條件就轉寫到Execl.

TXT檔是Oracle AP register 格式, 想從Expense nature 抽取需要的 data.

thanks:)


Oracle.zip (736 Bytes)

oracle.jpg (102.79 KB)

oracle.jpg

想得到什麼樣效果?
至少做個excel樣本~~

TOP

回復 2# 准提部林

將有30001 A/C 的 Row 滙入Excel後, 進行資料分割.
因為資料太多,所以不想整個TXT檔滙入後才篩選30001 A/C.


  Item    1 01-000-0-000-00-000-30001-000    Chilled Fresh Meiji 4.3 Deluxe Milk 1Lit               810.00    19-JUN-19     Proc
  Item    1 01-000-0-000-00-000-30001-000    Chilled Slim Milk Meiji 946ml                          162.00    19-JUN-19     Proc

效果如下               
               
Date                Description                                                          Amt
19-Jun-19        Chilled Fresh Meiji 4.3 Deluxe Milk 1Lit          810.00
19-Jun-19        Chilled Slim Milk Meiji 946ml                          162.00

TOP

Sub TEST()
Dim xFile$, Arr(1 To 6000, 1 To 3), N&, L
ActiveSheet.UsedRange.Offset(1, 0).EntireRow.Delete
xFile = ThisWorkbook.Path & "\Oracle.txt"
If Dir(xFile) = "" Then MsgBox "文字檔不存在! ": Exit Sub
Open xFile For Input As #1
While Not EOF(1)
      Line Input #1, L
      If Mid(L, 32, 7) = "-30001-" Then
         N = N + 1
         Arr(N, 1) = Trim(Left(Right(L, 18), 9))
         Arr(N, 2) = Trim(Mid(L, 46, 40))
         Arr(N, 3) = Trim(Right(Trim(Left(L, Len(L) - 20)), 15))
      End If
Wend
Close #1
[A2].Resize(N, 3) = Arr
End Sub

TEST190710.rar (8.07 KB)

文字檔與本檔須同一資料夾中


=====================

TOP

        靜思自在 : 犯錯出懺悔心,才能清淨無煩惱。
返回列表 上一主題