Avatar billede saxtus Nybegynder
09. maj 2007 - 17:22 Der er 1 kommentar og
1 løsning

Kopier fil til underfoldere

Hej Eksperter

Jeg skal ha kopieret en fil til en række underfoldere, se nedenfor:

c:\test
    \folder 1
    \anden folder
    .....
    \foldernr5

Jeg kan godt kopiere til en enkelt folder, men hvordan får jeg kopieret de underliggende foldere? foldernavnee er variable ligeledes er antallet af foldere.

urlen er filnavn og den fulde sti (c:\tekst.txt)
navn er (tekst.txt)

jeg har fået et hint med at det kan være noget i stil med:

For each fldr in f.subfolders
    fso.CopyFile filnavn.value, "c:\test\" & navn
NEXT

men det vil den ikke.

Nogen der har nogle idéer om hvordan det kan løses?
Avatar billede learningvba Nybegynder
10. maj 2007 - 14:18 #1
Her er et hint mere :-)

Sub Rekursivt(DrevOgMappe As String, StiTilFilDerSkalKopieres As String, FilDerSkalKopieres As String)
  Dim fso As New FileSystemObject
  Dim Mappe As Folder
  Dim Mapper As Folders
 
  Set Mapper = fso.GetFolder(DrevOgMappe).SubFolders
 
  For Each Mappe In Mapper
      fso.CopyFile StiTilFilDerSkalKopieres & FilDerSkalKopieres, Mappe.Path & "\" & FilDerSkalKopieres
      Rekursivt Mappe.Path, StiTilFilDerSkalKopieres, FilDerSkalKopieres
  Next Mappe
  Set fso = Nothing
End Sub

Sub Start()
  Rekursivt "c:\Test", "c:\", "tekst.txt"
End Sub
Avatar billede saxtus Nybegynder
11. maj 2007 - 09:32 #2
Fik hjælp fra en kolega, så her er hvad der virker

Sub KopierFiler
  if filnavn.value <> "" then
    urlen = filnavn.value
    sidstedel = inStrRev(urlen, "\")
    navn = Right(urlen, ( len(urlen)-sidstedel ))

    Set f = fso.GetFolder(strFolder)
    For each fldr in f.subfolders
      fso.CopyFile filnavn.value, fldr.Path & "\" & navn
    Next   
    Msgbox("Filen er blevet kopieret")
  else
    Msgbox("Vælg fil")
  end if
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
Kurser inden for grundlæggende programmering

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