Avatar billede Lasse Olsen Juniormester
14. september 2018 - 13:12 Der er 3 kommentarer og
1 løsning

Åben fil med dato

Hej CW
Jeg har en kode som unzipper en zipped fil og gemmer den i en ny mappe der bliver kaldt MyUnzipFolder(dagen dato).
Mappen der bliver oprettet hedder altså MyUnzipFolder efterfulgt af dagens dato. Min kode fejler så ved min makering(##) - da den ikke forstår strData når den skal åbne filen, hvad gør jeg galt?
If Fname = False Then
                    'Do nothing
                Else
                    'Root folder for the new folder.
                    'You can also use DefPath = "C:\Users\Ron\test\"
                    DefPath = "P:\"
                    If Right(DefPath, 1) <> "\" Then
                        DefPath = DefPath & "\"
                    End If
           
                    'Create the folder name
                    strDate = Format(Now, " dd-mm-yy")
                    FileNameFolder = DefPath & "MyUnzipFolder " & strDate
           
                    'Make the normal folder in DefPath
                    MkDir FileNameFolder
           
                    'Extract the files into the newly created folder
                    Set oApp = CreateObject("Shell.Application")
           
                    oApp.Namespace(FileNameFolder).CopyHere oApp.Namespace(Fname).items
           
                    On Error Resume Next
                    Set FSO = CreateObject("scripting.filesystemobject")
                    FSO.deletefolder Environ("Temp") & "\Temporary Directory*", True
                    End If
##                             
                    Dim xx As Workbook
                    Set xx = Workbooks.Open("P:\MyUnzipFolder & strData\ lmpriser_eSundhed_180813.xlsx")
Avatar billede supertekst Ekspert
14. september 2018 - 13:49 #1
Er strDate defineret?
Og i givet fald som hvad
Avatar billede claes57 Ekspert
14. september 2018 - 14:05 #2
Prøv at skifte
              strDate = Format(Now, " dd-mm-yy")
Til
        strDate = cStr(Format(Now, " dd-mm-yy"))
Avatar billede claes57 Ekspert
14. september 2018 - 14:08 #3
Hvis du bruger datoformatet yyyymmdd så kommer mapperne i logisk rækkefølge. Som du har det, vil første jan og første feb ligge lige efter hinanden derefter anden jan osv.
Avatar billede RogerWilco Seniormester
14. september 2018 - 18:06 #4
Du mangler da et par anførselstegn, og "strData" er stavet forkert.

Set xx = Workbooks.Open("P:\MyUnzipFolder" & strDate & "\lmpriser_eSundhed_180813.xlsx")
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