Witam,

Próbuję rozwiązać problem konwersji plików z rozszerzeniem *.csv do pliku z rozszerzeniem *.xlsx. Stworzyłem makro, które zarejestrowało "ręczne" zapisanie pliku z .csv do pliku .xlsx, po czym lekko je zmodyfikowałem aby ułatwiło mi pracę związaną z konwersją wielu plików i okazuje się, że makro nie działa jak powinno. Przy ręcznym zapisywaniu pliku z .csv do .xlsx wszystko jest ok, ale kiedy to samo próbuję wykonać za pomocą stworzonego makro, wartości w pliku .xlsx zapisują się w kilku kolumnach i oddzielone są od siebie znakiem ";". Może ktoś z was miał podobny orzech do zgryzienia i jednak go rozgryzł ? :)

Dodałem również plik .rar z załączonym plikiem .csv , plikiem poprawnie zapisanym (wzorcowy) oraz z plikiem wynikowym działania programu (nowy) w celu zrozumienia problemu

Kod :


Sub wyszukiwanie()

Dim nextFile As String
Dim myDir As String
Dim myFile As String

'sciezka do szukania
        
         myDir = InputBox(" Podaj ścieżkę dostępu do plików *.csv, zakończoną ' \ ' ")

         myFile = "*.csv"

            nextFile = VBA.Dir(myDir & myFile)

                    Do Until Len(nextFile) = 0


                            MsgBox nextFile


                            Dim wkb As Workbook

                            Set wkb = Workbooks.Open(myDir & nextFile)
                                                
                             ActiveWorkbook.SaveAs Filename:=myDir & "NOWY_" & nextFile & ".xlsx", FileFormat:=xlOpenXMLWorkbook
                            
                             ActiveWindow.Close

                             nextFile = VBA.Dir()

                    Loop

End Sub