30. marts 2012 - 12:37Der er
7 kommentarer og 2 løsninger
PDF Merge VBA
Jeg har en database (Microsoft Access 2007), der hver nat genererer ca. 30 forskellige rapporter. Disse rapporter bliver automatisk gemt som separate pdf-filer. Jeg kunne godt tænke mig, at jeg i min database kunne merge flere pdf-filer sammen, inden de bliver gemt. Spørgsmålet er derfor, om der findes en funktion i access, der kan gøre dette, eller om der er nogen som kan bidrage med et VBA-kode-eksempel.
Tak for svar. Jeg har et eksternt program, der aktiverer databasen, hvorefter den kører en almindelig makro ("skriv til"), der udskriver hver enkelt rapport som pdf-filer til en bestemt mappe.
Men fordi jeg skal sende forskellige rapportsammensætninger til forskellige personer, vil det være meget mere effektivt, hvis jeg kunne få access til at merge de forskellige rapporter sammen på forhånd.
Jeg har ikke Adobe Pro, men jeg vil da kigge på dette som en mulighed.
Jeg hører da også gerne om andre muligheder helst som styres fra access. En evt. mulighed via vba hører jeg også gerne om.
Der ligger freware programmer på nettet, som kan merge flere pdf-filer - og startes med en kommandolinie. Derfor:
1. Dan filerne og opsaml deres navne 2. Dan den kommandolinie, som skal bruges til at merge 3. Kald selve Merge-programmet (via en Shell kommando) med kommandolinien
Dit svar lyder jo som det helt rigtige. Jeg er rimelig til access og vba, men jeg er ikke access-ekspert. Kunne du måske for de tre punkter give lidt mere info, så er jeg sikker på at jeg kan få det til at fungere.
1. Dan filerne er ikke noget problem, men hvordan opsamler jeg navnene? 2. Dan kommandolinje til at merge. Hvordan gør man dette. Jeg anvender pdf split & merge basic. 3. Kald programmet via shell kommando. Det tror jeg, at jeg er ok med.
Bare en smule mere uddybende eller henvisning til evt. uddybende info vil være fint.
Jeg kender ikke syntaksen til pdf split & merge basic; men hvis vi leger at den f.eks. er: pdfmerge pdftotal.pdf, Fil1.pdf+Fil2.pdf+Fil3.pdf vil fremgangsmåden være noget i denne stil (i pseudo vba!):
Const ResultatFil="pdftotal.pdf" Dim Filnavne As String Filnavne="" For Each Fil DanFilen(AktueltFilnavn) Filnavne=Filnavne & AktueltFilnavn & "+" Next Fil Filnavne=Left(Filnavne,Len(Filnavne)-1) 'Fjern sidste plus Kommando="pdfmerge " & ResultatFil & ", " & Filnavne Call Shell (Kommando)
(ja, det er meget upoleret; men jeg tror, du fatter ideen)
Tak for svar. Jeg havde af en eller anden grunden overset, at I begge havde svaret. Jeg har downloadet adope pro og vil forsøge at arbejde videre med den foreslåede kode.
Hvis i begge ligger er svar vil jeg fordele pointene.
Tak for jeres svar. Som sagt vil jeg arbejde videre med begge jeres forslag. Jeg vil lige også lige kigge på script sproget i adobe pro. Men jeg tror, at jeg kan komme i mål herfra med jeres hjælp.
Synes godt om
Ny brugerNybegynder
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.