Avatar billede dorthe_lind Seniormester
04. maj 2010 - 11:47 Der er 15 kommentarer og
2 løsninger

Kopiere filnavne ind i Excel-ark

Jeg har 500 filnavne, som jeg skal have kopieret til et Excel-ark, dvs. det er ikke selve dokumentet/billederne, som jeg skal have kopieret over. Det er NAVNET, STØRRELSEN samt FIL-TYPE samt evt. DATO FOR ÆNDRING.

Hvordan får jeg disse info over i et Excel-ark ?

TUSIND TAK allerede nu til den/dem, der kan hjælpe ;O)
Avatar billede supertekst Ekspert
04. maj 2010 - 11:55 #1
Via VBA er det ikke noget problem - vender tilbage efter frokost.

Er filerne placeret i samme mappe eller?
Avatar billede dorthe_lind Seniormester
04. maj 2010 - 12:40 #2
Nej desværre er de placeret i forskellige mapper
Avatar billede supertekst Ekspert
04. maj 2010 - 12:47 #3
Er der nogen fællesnævner for disse mapper og hvor mange er der tale om?

Er det en engangsforestilling?
Avatar billede dorthe_lind Seniormester
04. maj 2010 - 13:31 #4
Det skal kopieres ind fra 3 forskellige mapper. Nogle af dokumentnavnene kan forekomme i flere mapper.

Det er kun billeder (jpg, tif og eps). Ca. 3000 stk., PYH bliver helt svedt ved tanken ;O)

Ja, det er en engangsforestilling. Jeg skal bruge det i forbindelse med at vi er ved at lave ny hjemmeside og billederne er primært billeder af vore produkter. Billederne skal knyttes til varebeskrivelserne og derfor er jeg ved at gennemgå det hele.

Jeg har forsøgt at lave en tekstfil via "start" - "kør" - CMD:
dir *jpg /b >jpg.txt
dir *tif /b >tif.txt og
dir *eps /b >eps.txt

Dette virker også ok, blot kunne jeg godt tænke mig at få oplysningerne vedr. fil-størrelse og evt. dato for ændring med.
Avatar billede supertekst Ekspert
04. maj 2010 - 13:47 #5
Rem Koden anbringes under Ark1 (højreklik på arkfanen - Vis programkode)
Rem Overskrift i række 1
Rem Makroen kan kaldes fra regnearket med Alt+F8 - afspil "OpretFilOversigt"
Rem Udpeg mappen - klik neutralt sted heri - tryk annuller - så bliver alle filer behandlet
Rem Efter kørslen - gem regnearket og kald makroen & udpeg næste mappe.
Rem Mit regneark kan i givet fald fremsendes - hvis du sender en mail - @-adr. under min profil
rem ===========================================

Dim sidsteRække As Long, aktuelleMappe As String
Dim filNavn As String, filStørrelse As Long, filType As String, sidstÆndret As Date
Dim ræk As Long, række As String
Sub opretFilOversigt()
    sidsteRække = ActiveCell.SpecialCells(xlLastCell).Row
    udpegMappe
   
    ræk = sidsteRække + 1
    gennemløbAfAktuelleMappe
   
End Sub
Private Sub udpegMappe()
With Application.FileDialog(msoFileDialogOpen)
        .Show
    End With
    aktuelleMappe = CurDir
   
End Sub
Private Sub gennemløbAfAktuelleMappe()
Dim fs, f, fil, fc

    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFolder(aktuelleMappe)
    Set fc = f.Files
   
    Application.ScreenUpdating = False
    For Each fil In fc
        With fil
            filNavn = .Name
            filStørrelse = .Size
            filType = .Type
            sidstÆndret = Format(.DateLastModified, "dd-mm-yy")
        End With
       
        række = ræk
        Range("A" & række) = filNavn
        Range("B" & række) = filStørrelse
        Range("C" & række) = filType
        Range("D" & række) = sidstÆndret
       
        ræk = ræk + 1
    Next
   
    Columns.AutoFit
   
    Application.ScreenUpdating = True
End Sub
Avatar billede dorthe_lind Seniormester
04. maj 2010 - 15:16 #6
IMPONERENDE !!!
Det må jeg sige, men vist en lidt for stor mundfuld for mig (kender ikke til VBA og er heller ikke den store programmør).

Tror du, at det kan hjælpe mig, hvis du sender mig regnearket ?
Avatar billede supertekst Ekspert
04. maj 2010 - 15:25 #7
Hvis du sender en mail (@-adresse under min profil) - så kan jeg returnere filen.
04. maj 2010 - 15:50 #8
Jeg har forsøgt at lave en tekstfil via "start" - "kør" - CMD:
dir *jpg /b >jpg.txt
dir *tif /b >tif.txt og
dir *eps /b >eps.txt

Slet "/b", så får du de ønskede oplysninger med.

dir *jpg >jpg.txt
dir *tif >tif.txt og
dir *eps >eps.txt
Avatar billede staal84 Nybegynder
04. maj 2010 - 23:34 #9
Er vild med både makro og dos-kommandoen, kan man også få den til at kigge i undermapper?

Hvis man f.eks. har 20 mapper, som hver indeholder en fil:

Eks.:
Mappe, Filnavn, størrelse, type, ændret
Osv.
Avatar billede supertekst Ekspert
05. maj 2010 - 08:40 #10
I VBA kan dette også lade sig gøre.
05. maj 2010 - 08:47 #11
dir *jpg /s >jpg.txt
dir *tif /s >tif.txt og
dir *eps /s >eps.txt

Så kigges der også i undermapper.
Avatar billede dorthe_lind Seniormester
05. maj 2010 - 10:01 #12
Fantastisk, så kunne jeg komme videre, tusinde tak
Avatar billede dorthe_lind Seniormester
05. maj 2010 - 10:04 #13
Erik og Supertekst: Vær rar at lægge svar begge 2, så jeg kan give point. Kan jeg give max point (200) til jer begge på denne tråd eller er jeg nødt til at fordele?
Avatar billede supertekst Ekspert
05. maj 2010 - 10:08 #14
Fordele - et svar herfra
05. maj 2010 - 11:22 #15
OK!
Avatar billede dorthe_lind Seniormester
05. maj 2010 - 14:02 #16
Erik, så vidt jeg kan se, så er det ikke et svar, du har smidt. Jeg tror, at du har valgt kommentar i stedet for svar. Kan det ikke passe? Du kommer i hvert fald ikke med på "point-tavlen"
05. maj 2010 - 15:59 #17
Prøver igen....
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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