Printen alle documenten in een bepaalde map

Status
Niet open voor verdere reacties.

Oudholland

Gebruiker
Lid geworden
4 jun 2020
Berichten
24
Ik heb verschillende mappen met documenten, waarvan ik de Word-documenten uit een specifieke map allemaal wil samenvoegen naar 1 totaal-pdf, of gewoon allemaal door de fysieke printer jassen.
Meestal gebruik(te) ik daar de PDF-creator als printer voor, en dan die de opdracht Samenvoegen geven.

Nu heb ik vorig jaar ergens een macro gevonden (en gebruikt) om alle documenten met een bepaalde extensie (in dit geval .docx) een voor een in volgorde A-Z te openen en te printen (naar de laatst gebruikte printer, dus de PDF-creator).
Helaas is die macro verloren gegaan, en heb ik die dus niet meer. En ik kan 'm ook niet meer terugvinden waar ik 'm vandaan had.

Zouden jullie mij op weg kunnen helpen met bovenstaand?
Ik wil dus
- selecteren welke map op de pc
- welk bestandstype
- daarna automatisch:
- bestand openen + printen
- 2e bestand openen + printen
- etc​

Ik stuurde die macro aan vanuit een willekeurig word-document; ik gaf alleen de map en het bestandstype op.
Het mag dus een print-opdracht zijn, maar ook een andere omzetting naar PDF, zolang de opmaak dan maar hetzelfde blijft doen als wanneer het document geprint zou zijn (marges, kop/voettekst etc).

Alvast bedankt!
 
Laatst bewerkt:
Ik begrijp je vraag naar een macro, maar zou je toch aanraden dit programma eens te bekijken !
Werkt schitterend en kan nog voor veel meer worden ingezet - is vooral snel (want opent de documenten in background) : https://www.print-conductor.com/nl
 
Het probleem is dat ik niet met een extern programma kan werken. ICT bij ons op het werk laat dat niet toe, ik heb geen rechten om als gebruiker een programma dat niet door hem is geïnstalleerd of geaccordeerd te draaien/openen.
 
Dan vraag je dat programma toch aan. Jij kost veel meer per uur dan de kosten van die software. En IT is er voor de gebruikers en niet andersom.
 
Daar denkt onze IT'er helaas anders over. Die discussie is niet te winnen, is al meerdere keren geprobeerd.
 
Zo te horen tijd om de IT-er te vervangen. Maar helaas wel een bekend een vaker voorkomend probleem.

Is het een oplossing om meerdere documenten te selecteren en met de rechtermuisknop voor print te kiezen?
 
Roger, dat eerste daar zijn meerdere collega's het zeker mee eens, maar dat hebben we zelf niet in de hand. :(
Rechtermuisknop -> printen heb ik inderdaad geprobeerd, en het lijkt dat erop dat dit (iig hier op de thuis-laptop) werkt. Alleen weet ik niet in welke volgorde er dan geprint wordt; is dit standaard de volgorde waarin ze ook weergegeven worden in de map?
Want ik heb mappen met 50+ bestanden die op volgorde van bestandsnaam A-Z geprint moeten worden. Dus dan moet ik wel zeker weten dat dit in de goede volgorde gaat...
 
Standaard is max. 15 documenten. Meer kan via de registry worden ingesteld, maar ik vrees dat de beheerder dat dan ook heeft vergrendeld.

Ik zou eens even moeten gaan nadenken hoe dat op te lossen.
 
Open alle documenten in één Word document, en print dat naar PDF. Lijkt mij de makkelijkste oplossing.
 
Hoe open ik alle documenten in 1 word-document? Het zijn nu aparte .docx-bestanden.
 
Zet het onderstaande eens in een .cmd bestand. Vervolgens kun je een map met Word documenten slepen naar dit bestand en zal alles in die map geprint worden.

Wel nog even kijken waar WINDORD.exe bij jou op de computer staat. De regel hieronder is voor Office365. Script print naar je default printer dus zorg even dat die goed staat

Code:
@REM set variables
set SourceFolder=%1
set SourceExt=docx

@REM print files
for /f %%f in ('dir /b "%SourceFolder%\*.%SourceExt%"') do "C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE" %%f /mFilePrintDefault /mFileExit /q /n
 
Hoe open ik alle documenten in 1 word-document? Het zijn nu aparte .docx-bestanden.
Door bijvoorbeeld een hoofddocument aan te maken, en de documenten daar als Subdocument in te zetten. Vervolgens afdrukken naar pdf. Heb je ook veel meer controle over inhoudsopgave en paginanummering.
 
Roger,

Ik krijg daarbij foutmeldingen.
Heb het .cmd-bestand in D:\Bureaublad\MacroTest staan, en de map met te printen documenten in een submap daarvan (test). Dan sleep ik de submap "test" naar het .cmd. Dat is toch de bedoeling?

Ik krijg in Word deze melding (bij alle documenten in de map):
Knipsel.PNG

In het cmd-window komt het volgende te staan:
Knipsel2.PNG

Code:
D:\Bureaublad\MacroTest>set SourceFolder=D:\Bureaublad\MacroTest\test
D:\Bureaublad\MacroTest>set SourceExt=docx
D:\Bureaublad\MacroTest>for /F %f in ('dir /b "D:\Bureaublad\MacroTest\test\*.docx"') do "C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE" %f /mFilePrintDefault /mFileExit /q /n
D:\Bureaublad\MacroTest>"C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE" 1234_2020_def.docx /mFilePrintDefault /mFileExit /q /n
D:\Bureaublad\MacroTest>"C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE" AB_2020_def.docx /mFilePrintDefault /mFileExit /q /n
D:\Bureaublad\MacroTest>"C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE" CQ_2020_def.docx /mFilePrintDefault /mFileExit /q /n
D:\Bureaublad\MacroTest>"C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE" cx_2020_def.docx /mFilePrintDefault /mFileExit /q /n

Het lijkt dat hij niet naar de sourcefolder kijkt bij het openen van de bestanden?

P.s. ik werk met office 2010 en/of 2016.
 
Laatst bewerkt:
Als ik google hoe ik dat doe, dan lijkt het me dat ik ze dan nog stuk voor stuk moet toevoegen?
En zoals ik het las, wordt dan de kop- en voettekst in het hoofddocument geregeld, en niet per subdocument. Of heb ik dat beiden verkeerd begrepen?
Als ik het vervolgens probeer, moet ik inderdaad ieder subdocument apart invoegen en krijg ik de kop/voettekst van de verschillende documenten er niet bij.

Het is voor een evaluatiesysteem waarbij per bedrijfsvestiging voor meerdere processen een evaluatie/planingsdocument wordt gemaakt, met voor ieder proces een aparte koptekst. Het document wordt vervolgens samengevoegd tot 1 pdf om overzicht te houden en collega's niet nodeloos te belasten met tientallen verschillende documenten.
De documenten worden al vanuit het databaseprogramma gegenereerd in de juiste opmaak (incl kop/voettekst) en met een macro opgeslagen met een bestandsnaam uit het document zelf. De kop/voettekst is nodig om in het samengevoegde document te zien over welk proces de pagina gaat.

Of lees/doe ik toch iets verkeerd waardoor het wel kan?
Zie bijgevoegd voorbeeld in pdf; zo moet het eruit gaan zien. Pagina 1+2 is document A, pagina 3 is document B en pagina 4 en verder is document C. En dit kunnen bij sommige vestigingen meerdere tientallen processen (dus documenten) zijn.

En de functie van Roger lijkt daarvoor geschikt, alleen krijg ik daarbij nog foutmeldingen.
 

Bijlagen

  • Vestiging_2020_totaal.pdf
    81,8 KB · Weergaven: 48
@Oudholland. Klopt. Foutje in het script.

Verander de laatste %%f in %SourceFolder%\%%f
 
Bedankt voor de reactie. Ik had het ondertussen al wel anders opgelost.
Na nog eens ingelogd te hebben op de thuiswerkomgeving en gekeken welke PDF-software ik tot mijn beschikking heb, lukt het ook op een andere manier.

Ik heb het script om het document op te slaan onder een bepaalde naam aangepast, zodat het document als zowel .docx als .pdf wordt opgeslagen met dezelfde naam in dezelfde map.
Vervolgens kan ik het met pdf-software (ik heb PDF-SAM tot mijn beschikking) samenvoegen door alle pdf's daar naartoe te slepen.
Dan lukt het wel.

Met de aanpassing krijg ik overigens nog steeds (dezelfde) foutmelding.
 
En zoals ik het las, wordt dan de kop- en voettekst in het hoofddocument geregeld, en niet per subdocument. Of heb ik dat beiden verkeerd begrepen?
Als ik het vervolgens probeer, moet ik inderdaad ieder subdocument apart invoegen en krijg ik de kop/voettekst van de verschillende documenten er niet bij .
Kwestie van de juiste dingen automatiseren. Zo kun je met een macro alle documenten simpel koppelen. Nu doe je dat alsnog handmatig.
Kop-en voettekst en zijn reuze makkelijk als je dat slim inricht. Daar zou je geen werk aan hoeven hebben. De meeste mensen doen/kunnen dat niet, en gaan vervolgens mopperen dat de functie het niet goed doet :).
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan