![]() |
||
|
Major Member
![]() 加入日期: Apr 2001 您的住址: TW
文章: 137
|
EXCEL VBA 讀取多個CSV檔案問題?
我想要讀取不同檔案型態檔案到EXCEL,但是目前遇到的問題是,若有多個檔案讀取,只會開啟第一個檔案讀取資料,之後開啟第二個檔案就不能開了.請問是我沒有完全關閉檔案造成,還是有其他問題?麻煩各位~謝謝!
我目前的程式碼 Sub Search_File_Summary(File_Summary, LogLink_Temp, t, Release_Temp, Search_Key, Search_Key1, Search_Key2, Temp_FileName, Temp_FileName_A, Temp_FileName_B) Dim MyBin As Double FileCheck_Point = False Select Case UCase(Temp_FileName_B) Case "SPD" 'TMT If InStr(UCase(Temp_FileName), "FT1_R0") > 0 Then Read_File = Temp_FileName Else Read_File = Temp_FileName End If Check_FileName = LogLink_Temp(t, 3) & Read_File FileCheck Check_FileName, FileCheck_Point If FileCheck_Point = True Then Open LogLink_Temp(t, 3) & Read_File For Input As #1 r = 0 Search_Key_Bin = "" Do Until EOF(1) Line Input #1, data MyString = data If MyString <> "" And Search_Key_Bin <> "" Then MyBin = Split(MyString, ",")(Search_Key_Bin) File_Summary(t, MyBin) = File_Summary(t, MyBin) + 1 End If If InStr(MyString, "Program") > 0 Then File_Summary(t, 0) = Split(Replace(MyString, " ", ""), ",")(2) End If If InStr(UCase(MyString), "BIN") > 0 Then MyString_Split = Split(MyString, ",") If Search_Key_Bin = "" Then For i = 0 To UBound(MyString_Split) If InStr(UCase(MyString_Split(i)), "BIN") > 0 Then Search_Key_Bin = i File_Summary(t, 0) = 1 Exit For End If Next i End If End If Loop Close #1 End If Case "LOG" 'Amida Check_FileName = LogLink_Temp(t, 3) & Temp_FileName FileCheck Check_FileName, FileCheck_Point If FileCheck_Point = True Then Open LogLink_Temp(t, 3) & Temp_FileName For Input As #1 r = 0 Search_Key_Bin = "" Do Until EOF(1) Line Input #1, data MyString = data If MyString <> "" And Search_Key_Bin <> "" Then MyBin = Split(MyString, ",")(Search_Key_Bin) File_Summary(t, MyBin) = File_Summary(t, MyBin) + 1 End If If InStr(MyString, "Test Program") > 0 Then File_Summary(t, 0) = Split(Replace(MyString, " ", ""), ":")(1) End If If InStr(UCase(MyString), "BIN") > 0 Then MyString_Split = Split(MyString, ",") If Search_Key_Bin = "" Then For i = 0 To UBound(MyString_Split) If InStr(UCase(MyString_Split(i)), "BIN") > 0 Then Search_Key_Bin = i File_Summary(t, 0) = 1 Exit For End If Next i End If End If Loop Close #1 End If Case "CSV" 'Scud1A Check_FileName = LogLink_Temp(t, 3) & Temp_FileName FileCheck Check_FileName, FileCheck_Point If FileCheck_Point = True Then Open LogLink_Temp(t, 3) & Temp_FileName For Input As #1 r = 0 Search_Key_Bin = "" Do Until EOF(1) Line Input #1, data MyString = data If MyString <> "" And Search_Key_Bin <> "" Then MyBin_Tmp = Split(MyString, ",") MyBin = Replace(Split(MyString, ",")(Search_Key_Bin), " ", "") File_Summary(t, MyBin) = File_Summary(t, MyBin) + 1 End If If InStr(MyString, "Test_Program") > 0 Then File_Summary(t, 0) = Split(Replace(MyString, " ", ""), ",")(1) End If If InStr(UCase(MyString), "BIN") > 0 Then MyString_Split = Split(MyString, ",") If Search_Key_Bin = "" Then For i = 0 To UBound(MyString_Split) If InStr(UCase(MyString_Split(i)), "BIN") > 0 Then Search_Key_Bin = i 'File_Summary(t, 0) = 1 Exit For End If Next i End If End If Loop Close #1 End If End Select End Sub |
|||||||
|
|