Mam problem, otóż poniżej program, który zamienia jednocześnie kilka plików csv na xlsm, z tym że w nowej nazwie pojawia się dodatkowo nazwa.csv i niem wiem jak z tego wybrnąć aby pojawiało sie tylko nazwa bez rozszerzenia
Sub pliki_csv_z_zapisywaniem() 'to makro puszczamy najpierw, żeby zrobiło pliki xls, a potem makro z module1
Dim numer_pliku As Integer
Dim sciezka As String
Dim nazwa As String
Dim linia_tekstu As String
Dim kalmar() As String 'tablica
Dim licznik As Integer
Dim kolumna As Integer
numer_pliku = 1 'numer=freefile
sciezka = "C:\pliki2\"
nazwa = Dir(sciezka)
Do While nazwa <> ""
If Right(nazwa, 3) = "csv" Then
ThisWorkbook.Sheets(1).Cells.Clear
licznik = 0
'Columns("c:c").NumberFormat = "@"
'Columns("b:b").NumberFormat = "#,##0.00"
Open sciezka & nazwa For Input As #numer_pliku
Do Until EOF(numer_pliku)
Line Input #numer_pliku, linia_tekstu
kalmar() = Split(linia_tekstu, ";")
licznik = licznik + 1
For kolumna = 0 To UBound(kalmar)
Cells(licznik, kolumna + 1) = kalmar(kolumna)
Next kolumna
Loop
Close #numer_pliku
Cells.EntireColumn.AutoFit
ThisWorkbook.SaveCopyAs sciezka & nazwa & ".xlsm" 'zamienia przerobione txt na xls.
End If
nazwa = Dir()
Loop
End Sub
Z góry dziękuję za pomoc.
Efekt powyższego makra jest taki:
Plik o nazwie plik1(z rozszerzeniem csv) zamienia się na plik1.csv ( z rozszerzeniem xlsm, ja jednak nie chcę aby w tej nazwie było . csv
Ten post był edytowany przez pit_piotr dnia: 20 październik 2011 - 21:16
Powód edycji: Używaj opcji "wstaw kod" dla przejrzystości tematu.

Zaloguj się
Rejestracja
Pomoc



















