VBATools

Jak wygenerować dokumenty w PDFach

by on Jun.19, 2025, under Newsy

Miałem na zadanie wykonanie wg listy wejściówek na zlot motocyklowy. To jedna z moich pasji, która czasem sięga do tej puli informatycznych możliwości. Tym razem celem było do utworzenia ponad 250 różnych pod względem treści passów jakie następnie mają jechać do drukarni. Ta określiła wielkość jak i format.

Czyli stanęło na A6 i format PDF. Doskonałym do tego wydawała by się korespondencja seryjna, ale ta jednak nie tworzy dokumentów PDFie, a za tym idzie również format, bo zwykłe dokumenty do A4 więc skalowanie po fakcie wydawało się dość czasochłonne.

Do tego zadania zaprzątałem dodatek Excelowy “Dane szablonów Worda“, który napisany wpierw w VBA a potem w .NET stanowi program w mojej ofercie. Obniżona cena do usługi subskrypcyjnej wydaje się atrakcyjna.

Zatem otrzymując grafikę przygotowałem document, tak aby ta stanowiła tło. Następnie dodałem treści, które zostały określone przez zakładkę developer jako formanty tekstowe. Każda z nich otrzymała indywidualną nazwę zgodną z nagłówkiem bazy danych Excela. Rozmieszczenie tych obiektów jest ważne ponieważ pole te nie mają właściwości kurczenia się, a obcięcie treści nie wchodzi w grę. Tutaj uwaga ponieważ część grafiki wchodziła mi w obszar formantu. Należało to przygotować precyzyjnie.

Jak widać poniżej oto fragment arkusza z polami jakie mechanizm stosował w kolejnych dokumentach zapisanych jako PDF:

Tak wygląda jedna z wersji passa przygotowana w Wordzie. Takich wersji można mieć dowolną ilość a tym razem cały proces musiał zostać przerobiony trzykrotnie uwzględniając wersje uczestnik, organizator i walentynki.

Uruchomienie procesu zrealizowało pliki zapisane w PDFie zgodnie z zaznaczonymi opcjami interfejsu rozwiązania:

Minutka lub dwie i wszystkie rekordy zmieniły się w pożądane pliki gotowe do wysyłki dla drukarni. Dodatek uwzględnia rekordy widoczne (zastosowanie filtrów) jak i opcję zaznaczonych rekordów, co przyśpiesza proces, np kiedy trzeba niektóre z nich puścić ponownie. Jak widać też w interfejsie jest opcja usunięcia formantów po ich uzupełnieniu (zastosowanie raczej dla dokumentów niż PDFów) jak i inne ciekawostki w tym zadaniu nie wykorzystane.

Samo rozwiązanie też posiada działanie odwrotne, czyli czytanie przygotowanych dokumentów Worda aby pobrać nazwy pól formularza budując nagłówek do uzupełnienia. Jeśli nie mamy do czynienia z jednym plikiem, a wieloma, to mechanizm czyta też uzupełnione treści tworząc kompletną bazę danych np do archiwizacji lub ponownego przetworzenia z wykorzystaniem tych danych. W tym przypadku nie korzystałem z tej możliwości.

Jeśli macie takie wyzwania to zapraszam na stronę z opisem rozwiązania do pobrania wersji DEMO z ograniczeniami, a następnie do zakupu rozwiązania, aby zaoszczędzić mnóstwo czasu oraz wyeliminować błędy ludzkie związane z podobnym przedsięwzięciem. Z pewnością niski koszt tego dodatku jest tego warty.

(c) Shon Oskar – www.VBATools.pl
Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.

:, , , , , , , ,

Leave a Reply