Avatar billede hjald8 Nybegynder
20. november 2004 - 11:21 Der er 15 kommentarer og
1 løsning

Lukker flere filer op vha makro foretage en ændring

Jeg har et bibliotek med 90 csv-filer.
Jeg skal have åbnet samtlige. Der skal ske en korrektion af samtlige, hvorefter de skal gemmes igen med samme navn og i samme bibliotek.
Kan man lave en makro, der gør dette for alle filer i dette bibliotek, idet det er den samme korrektion, der skal ske??

På forhånd mange tak.
Avatar billede jkrons Professor
20. november 2004 - 14:15 #1
Prøv med nedenstående. Ret mappens navn til det rigtige, og indsæt koden til dine rettelser, der hvor jeg har angivet det.

Sub AabnRet()

    Set fs = Application.FileSearch

    With fs
        .LookIn = "C:\test"
        .Filename = "*.csv"

        If .Execute(SortBy:=msoSortByFileName, _
        SortOrder:=msoSortOrderAscending) > 0 Then
            MsgBox "There were " & .FoundFiles.Count & _
                " file(s) found."

            For i = 1 To .FoundFiles.Count
                Workbooks.Open Filename:=.FoundFiles(i)
                'Insæt din kode til at rette her
                ActiveWorkbook.Save
                ActiveWorkbook.Close
            Next i

        Else
            MsgBox "There were no files found."
        End If

    End With

End Sub
Avatar billede hjald8 Nybegynder
21. november 2004 - 10:37 #2
Tak for input. Jeg har forsøgt med en test. Den debugger ved:

Set fs = Application.FileSearch"

Er det min version af Excel/VBA (Excel 2002) - som er et problem?
Avatar billede hjald8 Nybegynder
21. november 2004 - 10:41 #3
Forkert angivelse, der er en " for meget i første kommentar:

Set fs = Application.FileSearch

Ved debug kommer den med følgende besked:

Runtime error '1004'
Method 'Filesearch' of object '_application' failed
Avatar billede jkrons Professor
21. november 2004 - 10:42 #4
Jeg kører også 2002. Prøv at vælge (I VBA editoren) Tools - References. Hvilke referencer er vinget af?
Avatar billede hjald8 Nybegynder
21. november 2004 - 10:50 #5
Følgende er vinget af:
Visual Basic for Applications
MS Excel 10 object library
Ole Automation
MS Office 10 object library
Avatar billede jkrons Professor
21. november 2004 - 10:53 #6
Samme som hos mig. I mellemtiden har jeg googlet lidt, og fundet et enkelt entry, der bekriver præcis den samme problemstilling, nemlig at Applivation.FileSeach virker på én maskine, men ikke på en anden. Denne gang hos samem bruger. De to maskiner er tilsyneladende sat ens op, men alligevel virker det ikke. Desværre er der ingen løsning beskrevet, men jeg arbejder lidt videre.
Avatar billede hjald8 Nybegynder
21. november 2004 - 10:56 #7
Det må siges at være mystisk. Kan det være noget med autorisationer i forhold drev og biblioteksstruktur?
Avatar billede jkrons Professor
21. november 2004 - 11:10 #8
Det burde det ikke. Du når jo ikke så langt som til at vælge drevet.
Avatar billede jkrons Professor
21. november 2004 - 11:12 #9
Har du berænsninger på, hvad du må lave, fx bruge stifinder, eller er du administrator med alle rettigheder?
Avatar billede hjald8 Nybegynder
21. november 2004 - 11:18 #10
Jeg skulle have fulde rettigheder, men jeg kører via en terminalserver som selvfølgelig kan give lidt problemer - kunne jeg forestille mig. Jeg teste det lige på min egen maskine - den kører dog med Office2003. Jeg vender tilbage snarest.
Avatar billede jkrons Professor
21. november 2004 - 11:21 #11
Så vidt jeg kan se af indlæg på google virker application.filesearch kun hvis man er logget på pc'en med administratorrettigheder. Det vil sige, at i dit tilfælde skal du måske have administratorrettigheder til serveren.
Avatar billede hjald8 Nybegynder
21. november 2004 - 11:32 #12
Den virker på min private maskine. Så jeg tror, at det er terminalserveren der giver mig problemer. Jeg har administratorrettigheder på strukturen - men måske ikke via terminalserveren.

Jeg har lidt problemer med at den kommaseparere istedet for semikolonseparere (hvad de oprindeligt er). Det mener jeg, at jeg har noget kodning til at løse.

Hvordan slipper jeg for dialogboksen 'Vil du gemme ændringer' for hver fil?
Avatar billede hjald8 Nybegynder
21. november 2004 - 11:42 #13
Jeg kunne ikke lige løse problematikken om kommasepareret i forhold til semikolonsepareret. Ærgerligt.
Avatar billede jkrons Professor
21. november 2004 - 12:55 #14
Omkring komma kontra semikolonseparerede filer, har jeg ingen anelse. Desværre. Dialogboksen ser jeg lige på.
Avatar billede hjald8 Nybegynder
22. november 2004 - 21:13 #15
>Jkrons
Jeg synes, at du skal ligge et svar, som jeg kan honorere. Din løsning virkede jo. Men jeg var ikke klar over at semikolonsepareringen var et problem.
Avatar billede jkrons Professor
23. november 2004 - 15:15 #16
OK. Jeg ved, at CSV filer er forskellige, alt efter om de laves direkte i regnearket (semikolon) eller via VBA (komma), så måske er det også et problem, når de åbnes.

Jeg vender lige tilbage omkring dialogboksen.
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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