vbamania.pl
login:
hasło:
 
  *Rejestracja *Zapomniane hasło
 Dziś jest poniedziałek, 13 maja 2024 roku.
Ustaw jako stronę startową Ulubione Napisz
PowrótPowrót do serwisu  RegulaminRegulamin rssRSS

  tytuł wątku:
Wątki dyskusji

Masowa zmiana nazwy pliku


otwartyotwarty rozpoczął: Tomix77 postów: 4



napisał: Trebor
postów: 1209


umieszczony:
1 maja 2011
16:50

  
Myślę, że wszystko wyjaśni przykład z pomocy excela:
W tym przykładzie wykorzystano instrukcję Name do zmiany nazwy pliku. Przyjęto, że istnieją określone katalogi lub foldery.

Dim StaraNazwa, NowaNazwa
' Zdefiniuj nazwy plików.
StaraNazwa = "PLIK1": NowaNazwa = "PLIK2"
Name StaraNazwa As NowaNazwa' Zmień nazwę pliku.

' W systemie Microsoft Windows:
StaraNazwa = "C:\KATALOG1\PLIK1": _
NowaNazwa = "C:\KATALOG2\PLIK2"
Name StaraNazwa As NowaNazwa' Przenieś plik i zmień
' jego nazwę.

' W systemie Macintosh:
StaraNazwa = "HD:FOLDER1: PLIK1": _
NowaNazwa = "HD:FOLDER2: PLIK2"
Name StaraNazwa As NowaNazwa' Przenieś plik i zmień

' jego nazwę.

napisał: Tomix77
postów: 20


umieszczony:
1 maja 2011
12:38

  
Witam

Wszystko działa poprawnie, i import nazy oraz zapis nowej nazwy, tylko mam małe pytanko, czy mozna ustawić żeby pliki z nowymi nazwami zapisywały się na dysku c:\xxx pod nazwa katalogu np.xxx.
Wielkie dzieki.

Tomek
napisał: Trebor
postów: 1209


umieszczony:
29 kwietnia 2011
21:25

  
Bez obsługi błędów (testuj na kopii katalogu)
Pierwsze makro wypisuje jpegi ze wskazanego folderu, drugie zmienia nazwy na wskazane w kolumnie 2
Sub wypisz_pliki()

Dim sciezka As String, plik As String, licznik As Long
 With Application.FileDialog(msoFileDialogFolderPicker)
If .Show Then sciezka = .SelectedItems(1)
End With
If sciezka = "" Then Exit Sub
plik = Dir(sciezka & "\*.jpg")
Do While plik <> ""
    
    licznik = licznik + 1
    Cells(licznik, 1) = sciezka & "\" & plik
    plik = Dir
Loop
End Sub

Sub zmień_nazwy()
Dim i As Long
'nazwy docelowe w drugiej kolumnie, tylko nazwa z rozszerzeniem
For i = 1 To Cells(Rows.Count, 2).End(xlUp).Row
If Dir(Cells(i, 1)) <> "" And Cells(i, 2) <> "" Then Name Cells(i, 1) As Cells(i, 2)
Next i

End Sub

napisał: Tomix77
postów: 20


umieszczony:
29 kwietnia 2011
14:46

  
Witam
Moje pytanie dotyczy masowej zmiany nazwy plików ( nazwa.jpg). Mam 120 plików *.jpg i mam w pliku w Excelu (akurat Excel, ale może być jakiś plik tekstowy) nazwy plików, które chciałby nadać plikom z podanego katalogu. Czy ktoś wie jak to zrobić żeby wczytać wymagane pliki i podać plik z którego po zaznaczeniu, np. pierwszy plik &#8222;1.jpg&#8221; będzie miał nazwę &#8222;041103_2.0019.160_00000001_11.jpg&#8221; i po sparowaniu wszystkich plików naciskamy przycisk i wszystkie nazwy plików zmieniają się na takie jak w pliku.

Pozdrawiam
Tomek


<-wstecz  1  dalej->
wszystkich stron: 1


Sortuj posty: z