Temat: Wczytanie wielu plików CSV - problem z literą F
Witam,do wczytania kilkunastu plików CSV z jednego folderu korzystam z funkcji spod tego linku:
https://www.extendoffice.com/documents/excel/3388-excel...
Parametr .TextFilePlatform = 437 zmieniłem na xlWindows, ustawiłem .TextFileSemicolonDelimiter = True i wyłączyłem .TextFileOtherDelimiter = False
Wszystko działa bez zarzutu, jednak w przypadku pliku CSV zawierającego komórki z literą F makro obcina literę F i wstawia pustą komórkę. Przykład:
plik CSV
Marcin;Kowalski;Polska
Marek;Fraczek;Polska
zostanie wczytane jako
Marcin;Kowalski;Polska
Marek;[TU PUSTA KOMORKA];raczek;Polska
Dlaczego tak się dzieje? Rozwiązanie być może trywialne, niemniej nie udało mi się znaleźć rozwiązania. Nawet nie wiem jak zapytać wyszukiwarkę, aby zbliżyć się do rozwiązania.
Poniżej kod funkcji spod powyższego linku:
Sub LoadPipeDelimitedFiles()
'UpdatebyKutoolsforExcel20151214
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\*.txt")
Do While xFile <> ""
xCount = xCount + 1
Sheets(xCount).Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
& xStrPath & "\" & xFile, Destination:=Range("A1"))
.Name = "a" & xCount
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 437
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
xFile = Dir
End With
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files txt", , "Kutools for Excel"
End Sub
Pozdrawiam
Grzegorz