Avatar billede downloadcentral.dk Nybegynder
05. december 2005 - 10:37 Der er 6 kommentarer og
1 løsning

Gentagelse af samme handling

Hej,

jeg skal åbne mange filer i samme rod og ønsker så kun at skulle skrive:

Root = "C:\Documents and Settings\Martin M. Jorgensen\Desktop\Videregående EDB\Destinationer\"

Workbooks.Open Filename:= Root & filnavn

én gang, for herefter kun at skulle indsætte navnene på filerne der skal åbnes. Hvordan gør jeg det, når der er flere?
Avatar billede sjh Nybegynder
05. december 2005 - 12:52 #1
så er det vel bare at løbe dir igennem..


Dim strRoot As String
Dim strPath As String
Dim strFilename As String

  strRoot = "C:\Documents and Settings\Martin M. Jorgensen\Desktop\Videregående EDB\Destinationer\"

  strFilename = Dir(strRoot, vbDirectory)
  Do While strFilename <> ""
    If strFilename <> "." And strFilename <> ".." Then
      If (Not GetAttr(strRoot & strFilename)) And vbDirectory Then
        If LCase$(Right$(strFilename, 4)) = ".xls" Then ' Hvis filtype er ".xls"
          Workbooks.Open (strRoot & strFilename)
        End If
      End If
    End If
    strFilename = Dir
  Loop
Avatar billede downloadcentral.dk Nybegynder
05. december 2005 - 14:59 #2
Uhh nice, jeg havde ellers lavet den på den besværlige måde nu.
Kan du forklare hvad det forskellige gør helt præcis.. Alstå tager den bare alle filer i den mappe af filtypen xls?
Avatar billede sjh Nybegynder
05. december 2005 - 15:06 #3
Alstå tager den bare alle filer i den mappe af filtypen xls? JA

  strFilename = Dir(strRoot, vbDirectory) ' Henter den første fil
  Do While strFilename <> "" ' Looper til strFilename er tom
    If strFilename <> "." And strFilename <> ".." Then ' tjekker om strFilename kun indeholder . eller ..
      If (Not GetAttr(strRoot & strFilename)) And vbDirectory Then ' tjekker om det er et dir eller fil
        If LCase$(Right$(strFilename, 4)) = ".xls" Then ' Hvis filtype er ".xls"
          Workbooks.Open (strRoot & strFilename) ' Åbner filen
        End If
      End If
    End If
    strFilename = Dir ' Forsætter loop
  Loop
Avatar billede downloadcentral.dk Nybegynder
05. december 2005 - 15:08 #4
Mange tak! Du må gerne svare, hvis du har lyst!
Avatar billede sjh Nybegynder
05. december 2005 - 15:09 #5
strFilename = Dir ' henter den næste fil ;)
Avatar billede sjh Nybegynder
05. december 2005 - 15:09 #6
svar
Avatar billede downloadcentral.dk Nybegynder
05. december 2005 - 15:10 #7
:)
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