透過vba在文字檔案搜尋某一字串,再將包含此字串的整列data import至excel工作表
Sub 匯入文字檔A()
Dim i As Integer, ii As Integer, Str As Variant, F As Object
With Application.FileDialog(msoFileDialogFilePicker) '[檔案選擇器]
.AllowMultiSelect = True '可多重選擇檔案
.Title = "文字檔 匯入excel" '[檔案選擇器] 的標題
.Filters.Clear '清除 [檔案選擇器] 對話方塊的檔案篩選
.Filters.Add "文字檔", "*.txt", 1 '新增 [檔案選擇器] 對話方塊的檔案篩選
'篩選清單中新控制項所在位置的數值 1
.Filters.Add "*.*", "*.*", 2 '新增 [檔案選擇器] 對話方塊的檔案篩選
'篩選清單中新控制項所在位置的數值 2
.FilterIndex = 1 '當檔案對話方塊首次開啟時,預設篩選判定所顯示的檔案類型。
If .Show = 0 Then Exit Sub '沒選擇檔案時離開檔案
For i = 1 To .SelectedItems.Count '依序在選擇檔案數目的迴圈
Set F = CreateObject("Scripting.FileSystemObject").OpenTextFile(.SelectedItems(i), 1, -1)
'F.READALL 讀取檔案的文字, Split(字串, 分隔字串)->傳回一維陣列
For Each Str In Split(F.READALL, Chr(10)) '傳回一維陣列 的迴圈
If Str Like "*TEST*" Then
Cells(ii + 1, "a") = Str '整列匯入工作表
ii = ii + 1 '下一列
End If
Next
F.Close '關閉文字檔
Next
End With
End Sub
沒有留言:
張貼留言