Apr 072004
 

Of kortweg Wart? Lijkt teveel op Fart! Hehehe, grapje. Het is me gelukt om in een Delphi6 progje de MailMergefields te vervangen door tekst. Er zat nog een addertje onder het gras, want…. Je kunt niet naar een MMField toespringen zoals met een Bookmark. Dus…je moet door de velden heen loop-en, en kijken of de huidige de door jou gezochte is. Zo ja, dan kun je hem met Select/Selection.TypeText vervangen. Maar ja, dan verandert het aantal MMFields in het document, en wordt de lus (die zo handig tot en met MMFields.Count liep) ineens ongeldig. Want had je eerst bijvoorbeeld 4 MMFields, na de eerste replace heb je er nog maar 3. Kortom, index 4 gaat fout en geeft een Exception. Oplossing zoals ik hem heb gemaakt (commentaar voor een betere) is een while-loop die kijkt of er nog MMFields zijn (while MMFields > 0) met daarin een for-loop die van 1 tot MMFields.Count zoekt naar het juiste veld. Is het veld gevonden, dan vervangen en met een Break eruit. While gaat dan verder….

Nu de koppeling naar de dictionary leggen, en de “ik vervang mijn Word samenvoegvelden door database-query-results applicatie” is geboren. Daarna komen de lussen en geneste lussen.

*zucht* Waarom is het alweer bedtijd?!

 Posted by at 23:46