Avatar billede tommyf Nybegynder
12. januar 2007 - 13:34 Der er 12 kommentarer og
1 løsning

Omdøbe mange filer på baggrund af excel-ark

Er der et program eller en funktion i Windows, hvor man kan omdøbe en lang række filer på baggrund af en liste? Pt. er listen i excel, men kan let laves om til tekst, csv, eller andet.

Så: Er det muligt at omdøbe mange filer udfra excelark med det gamle og nye navn? Anyone?
Avatar billede kabbak Professor
12. januar 2007 - 14:01 #1
Ja, hvis du har hele stien med

Hvis du har eksisterende navn i kolonne A og Nyt navn i kolonne B, så markerer du de eksisterende navne i kolonne A og kører makroen

Public Sub RenameFiles()
Dim C As Range
For Each C In Selection
Name C As C.Offset(0, 1)
Next
End Sub
Avatar billede kabbak Professor
12. januar 2007 - 14:02 #2
Det er en makro i Excel, dette foregår
Avatar billede tommyf Nybegynder
12. januar 2007 - 14:06 #3
Bare for at være sikker: Dette ændre ikke (kun) noget i Excel, men også selve filnavnene i den respektive mappe?
Avatar billede kabbak Professor
12. januar 2007 - 14:09 #4
Yes, den ændrer filnavnene på harddisken
Avatar billede kabbak Professor
12. januar 2007 - 14:10 #5
Du kunne jo lave en test på en dummy fil
Avatar billede kabbak Professor
12. januar 2007 - 14:15 #6
her er en der skriver i 3 kolonne, hvis der var fejl

Public Sub RenameFiles()
    Dim C As Range
    On Error GoTo Fejl
    For Each C In Selection
        Name C As C.Offset(0, 1)
    Next
    Exit Sub
Fejl:
    MsgBox C & " blev ikke fundet/ændret"
    C.Offset(0, 2) = "Fejl"
    Resume Next
End Sub
Avatar billede kabbak Professor
12. januar 2007 - 14:17 #7
lidt mere

Public Sub RenameFiles()
    Dim C As Range
    On Error GoTo Fejl
    For Each C In Selection
        Name C As C.Offset(0, 1)
        C.Offset(0, 2) = "OK"
Videre:
    Next
    Exit Sub
Fejl:
    MsgBox C & " blev ikke fundet/ændret"
    C.Offset(0, 2) = "Fejl"
    GoTo Videre
End Sub
Avatar billede kabbak Professor
12. januar 2007 - 14:22 #8
mere ændring, på fejlfortolkning

Public Sub RenameFiles()
    Dim C As Range
    On Error GoTo Fejl
    For Each C In Selection
        Name C As C.Offset(0, 1)
        C.Offset(0, 2) = "OK"
Videre:
    Next
    Exit Sub
Fejl:
    MsgBox C & " blev ikke fundet/ændret"
    C.Offset(0, 2) = "Fejl"
    Err.Clear
    Resume Videre
End Sub
Avatar billede tommyf Nybegynder
30. januar 2007 - 20:50 #9
Du må være jordens klogeste mand :)

Der står godt nok i din profil at du bruger meget tid på Basic ifb. Excel, men er det også noget du laver i dit daglige job?

Skynd dig at smide et svar.
(Beklager den lange svartid)
Avatar billede kabbak Professor
30. januar 2007 - 23:24 #10
et svar;-))

Jeg programmerer en del i VBA på mit arbejde.
Avatar billede kabbak Professor
31. januar 2007 - 19:01 #11
tak for point
Avatar billede tommyf Nybegynder
04. februar 2007 - 01:42 #12
Det er mig der takker. Jeg har lige et tillægsspørgsmål, hvis du gerne vil have det oprettet som et nyt spørgsmål, skal du bare sige til: Kan man let ændre det, så den i stedet for at ændre navnet opretter en kopi med det nye navn? (så den eksisterende stadig er der).
Det skyldes at den samme fil skal omdøbes til flere nye... redundant og dumt, ved det godt, men sådan er det åbenbart skruet sammen.
Avatar billede kabbak Professor
04. februar 2007 - 11:46 #13
ret
Name
til
FileCopy

sådan, og omdøb lige makroen, så du ved hvad den gør.

Public Sub CopyFiles()
    Dim C As Range
    On Error GoTo Fejl
    For Each C In Selection
    FileCopy C, C.Offset(0, 1)
        C.Offset(0, 2) = "OK"
Videre:
    Next
    Exit Sub
Fejl:
    MsgBox C & " blev ikke fundet/ændret"
    C.Offset(0, 2) = "Fejl"
    Err.Clear
    Resume Videre
End Sub
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester