Marco's help Access - het lukt niet

Status
Niet open voor verdere reacties.

Joline1986

Nieuwe gebruiker
Lid geworden
27 jan 2011
Berichten
4
Goedemiddag,

Ik heb een Acccess Database, maar die moet met een scrolldown lijst (volgens mij via besturingselementen wat ik vond) gemaakt worden.
Daarna volgen de Marco's

"Exporteren met Opmaak"
PDF
Scherm

"Menuopdrachtuitvoeren"
Uitvoeren naar Standaardbrieven

"Procedure uitvoeren"
(Wordmailmerge)

Dit werkt dus niet, hij exporteert de hele tabel naar Word in PDF.

Ik heb op de C schijf een map genaamd Database, daarin zit de betreffende Database, daaronder een map Templates en in die map Templates het bewuste Word document.

Hoe krijg ik het nu voor elkaar dat ik en scrolldown kan creeeren en dat ik dan vanuit access die brief kan selecteren.

Ik heb het Word sjabloon al wel is samengevoegt, dus de velden staan wel ingevuld, maar het moet geautomatiseerd worden, omdat er meerdere brieven in komen.

Ik weet dat er wellicht velen met VBA codes aankomen, maar dat ga ik helaas niet begrijpen.

Alvast reuze bedankt
 
Zonder programmatie kan je de brieven opnieuw aanmaken in Access in één of meerdere rapporten en daar een combinatie van vaste tekst en veld info gebruiken. Maar Access heeft niet dezelfde tekstverwerkings capaciteiten als Word.
Je kan de automatisatie ook met een macro in Word doen, maar ik vermoed dat je dat ook zal moeten programmeren, je kan de vraag misschien ook eens in het Word forum plaatsen.
 
Wat wil je precies bereiken? Ik snap je vraag namelijk niet helemaal. Je kunt in Word prima samenvoegen met een Access database (query of tabel) zonder te programmeren. Dat werkt niet anders als samenvoegen met een Excel tabel of een Word tabel. Anders wordt het als je 'live' verschillende selecties wilt maken die je m.b.v. een keuzelijst (zo heet zo'n ding) wilt kunnen maken; vanuit Word kun je alleen met 'vaste' gegevensbronnen samenvoegen. Er mogen in je query dus geen variabelen zitten die bij het samenvoegen nog ingevuld moeten worden.

Dat betekent dat je je samenvoegquery dus moet voorzien van een niet-variabele gegevensbron. Dus je kunt niet m.b.v. een keuzelijst een nieuwe selectie maken en samenvoegen. Dat kan overigens wél als je in Access met die keuzelijst een query maakt waarin de filtering 'hard' is verwerkt. Stel dat je een brief wilt maken aan bepaalde personen van een bepaalde klant. Dan zet je in je query een criterium [KlantID]=123. Dat werkt prima. De volgende keer zul je echter het klantnummer moeten aanpassen als je een brief wilt maken voor een andere klant.

Wat je echter vraagt
Hoe krijg ik het nu voor elkaar dat ik en scrolldown kan creeeren en dat ik dan vanuit access die brief kan selecteren.
is héél wat anders; jij wilt twee verschillende dingen bereiken: 1) dynamisch een brief kiezen (en vervolgens Word opstarten, neem ik aan) en 2) een selectie (?) met die brief samenvoegen. Dit kan alleen met hogeschoolprogrammeren. Alleen al het eerste (een keuzelijst met brieven) zal voor de meesten in dit Access forum al een brug te ver zijn. Maar volgens mij is dat dus nergens voor nodig: doe je samenvoeging vanuit Word, waarbij je (liefst) met één vaste query samenvoegt, die je dan vanuit je formulier met je keuzelijst(en) samenstelt.

Het alternatief, zoals al door noella aangegeven, is een stuk simpeler (alhoewel niet makkelijk). Maak je brief (of brieven) in een Access rapport, en koppel dat aan het gegevensbestand (tabel, query). Dan is het vervolgens een kwestie van een selectie maken op het formulier met de keuzelijst, en op de knop drukken. Je rapport opent dan met de geselecteerde records. Als je dat slim bouwt, heb je vermoedelijk ook niet zoveel brieven nodig, tenzij het totaal verschillende brieven zijn natuurlijk. Voor elk model maak je dan een eigen rapport. Access is een beetje lastig qua tekstverwerken, omdat het met tekstvakken werkt, en niet met alinea's zoals Word. Het is dus heel lastig (edoch niet onmogelijk) om variabele gegevens in een tekstvak te krijgen. Maar een beetje puzzelen is het wel.

Afhankelijk van de hoeveelheid brieven/rapporten, en de structuur, zou ik dan kiezen voor ofwel rapporten, ofwel Word sjablonen. En in het laatste geval dus starten vanuit Word met de sjablonen, niet vanuit Access. Ook al om het programmeren tot een minimum te beperken. Als je het netjes opzet, kun je met minder dan 10 regels programmeren alles voor elkaar hebben. En die kun je van mij wel krijgen :).
 
Wat wil je precies bereiken? Ik snap je vraag namelijk niet helemaal. Je kunt in Word prima samenvoegen met een Access database (query of tabel) zonder te programmeren. Dat werkt niet anders als samenvoegen met een Excel tabel of een Word tabel. Anders wordt het als je 'live' verschillende selecties wilt maken die je m.b.v. een keuzelijst (zo heet zo'n ding) wilt kunnen maken; vanuit Word kun je alleen met 'vaste' gegevensbronnen samenvoegen. Er mogen in je query dus geen variabelen zitten die bij het samenvoegen nog ingevuld moeten worden.

Dat betekent dat je je samenvoegquery dus moet voorzien van een niet-variabele gegevensbron. Dus je kunt niet m.b.v. een keuzelijst een nieuwe selectie maken en samenvoegen. Dat kan overigens wél als je in Access met die keuzelijst een query maakt waarin de filtering 'hard' is verwerkt. Stel dat je een brief wilt maken aan bepaalde personen van een bepaalde klant. Dan zet je in je query een criterium [KlantID]=123. Dat werkt prima. De volgende keer zul je echter het klantnummer moeten aanpassen als je een brief wilt maken voor een andere klant.

Wat je echter vraagt

is héél wat anders; jij wilt twee verschillende dingen bereiken: 1) dynamisch een brief kiezen (en vervolgens Word opstarten, neem ik aan) en 2) een selectie (?) met die brief samenvoegen. Dit kan alleen met hogeschoolprogrammeren. Alleen al het eerste (een keuzelijst met brieven) zal voor de meesten in dit Access forum al een brug te ver zijn. Maar volgens mij is dat dus nergens voor nodig: doe je samenvoeging vanuit Word, waarbij je (liefst) met één vaste query samenvoegt, die je dan vanuit je formulier met je keuzelijst(en) samenstelt.

Het alternatief, zoals al door noella aangegeven, is een stuk simpeler (alhoewel niet makkelijk). Maak je brief (of brieven) in een Access rapport, en koppel dat aan het gegevensbestand (tabel, query). Dan is het vervolgens een kwestie van een selectie maken op het formulier met de keuzelijst, en op de knop drukken. Je rapport opent dan met de geselecteerde records. Als je dat slim bouwt, heb je vermoedelijk ook niet zoveel brieven nodig, tenzij het totaal verschillende brieven zijn natuurlijk. Voor elk model maak je dan een eigen rapport. Access is een beetje lastig qua tekstverwerken, omdat het met tekstvakken werkt, en niet met alinea's zoals Word. Het is dus heel lastig (edoch niet onmogelijk) om variabele gegevens in een tekstvak te krijgen. Maar een beetje puzzelen is het wel.

Afhankelijk van de hoeveelheid brieven/rapporten, en de structuur, zou ik dan kiezen voor ofwel rapporten, ofwel Word sjablonen. En in het laatste geval dus starten vanuit Word met de sjablonen, niet vanuit Access. Ook al om het programmeren tot een minimum te beperken. Als je het netjes opzet, kun je met minder dan 10 regels programmeren alles voor elkaar hebben. En die kun je van mij wel krijgen :).

Oke het "probleem" is dus dat ik dit voor iemand moet doen waarvoor ik ooit de database heb gemaakt.

Die hebben dus een Pulldown en wat ik zei met de documenten op de C schijf staan waaruit je dat document via templates in Access kan krijgen. Samenvoegen e.d. weet ik dat gaat, maar dat is niet de oplossing. Brief opmaken in Access willen ze niet.

De vraag is dus via de Wizard kan je een besturingselement gebruiken en ik denk dat dat zo een pulldown inzit, maar daaraan moeten macro's hangen die naar die brief gaan. Ik weet niet of dat hogeschool is, maar het is al eerder gedaan in de file, dus het kan gewoon, alleen ik weet dus niet hoe :(
 
Wat wil je precies bereiken? Ik snap je vraag namelijk niet helemaal. Je kunt in Word prima samenvoegen met een Access database (query of tabel) zonder te programmeren. Dat werkt niet anders als samenvoegen met een Excel tabel of een Word tabel. Anders wordt het als je 'live' verschillende selecties wilt maken die je m.b.v. een keuzelijst (zo heet zo'n ding) wilt kunnen maken; vanuit Word kun je alleen met 'vaste' gegevensbronnen samenvoegen. Er mogen in je query dus geen variabelen zitten die bij het samenvoegen nog ingevuld moeten worden.

Dat betekent dat je je samenvoegquery dus moet voorzien van een niet-variabele gegevensbron. Dus je kunt niet m.b.v. een keuzelijst een nieuwe selectie maken en samenvoegen. Dat kan overigens wél als je in Access met die keuzelijst een query maakt waarin de filtering 'hard' is verwerkt. Stel dat je een brief wilt maken aan bepaalde personen van een bepaalde klant. Dan zet je in je query een criterium [KlantID]=123. Dat werkt prima. De volgende keer zul je echter het klantnummer moeten aanpassen als je een brief wilt maken voor een andere klant.

Wat je echter vraagt

is héél wat anders; jij wilt twee verschillende dingen bereiken: 1) dynamisch een brief kiezen (en vervolgens Word opstarten, neem ik aan) en 2) een selectie (?) met die brief samenvoegen. Dit kan alleen met hogeschoolprogrammeren. Alleen al het eerste (een keuzelijst met brieven) zal voor de meesten in dit Access forum al een brug te ver zijn. Maar volgens mij is dat dus nergens voor nodig: doe je samenvoeging vanuit Word, waarbij je (liefst) met één vaste query samenvoegt, die je dan vanuit je formulier met je keuzelijst(en) samenstelt.

Het alternatief, zoals al door noella aangegeven, is een stuk simpeler (alhoewel niet makkelijk). Maak je brief (of brieven) in een Access rapport, en koppel dat aan het gegevensbestand (tabel, query). Dan is het vervolgens een kwestie van een selectie maken op het formulier met de keuzelijst, en op de knop drukken. Je rapport opent dan met de geselecteerde records. Als je dat slim bouwt, heb je vermoedelijk ook niet zoveel brieven nodig, tenzij het totaal verschillende brieven zijn natuurlijk. Voor elk model maak je dan een eigen rapport. Access is een beetje lastig qua tekstverwerken, omdat het met tekstvakken werkt, en niet met alinea's zoals Word. Het is dus heel lastig (edoch niet onmogelijk) om variabele gegevens in een tekstvak te krijgen. Maar een beetje puzzelen is het wel.

Afhankelijk van de hoeveelheid brieven/rapporten, en de structuur, zou ik dan kiezen voor ofwel rapporten, ofwel Word sjablonen. En in het laatste geval dus starten vanuit Word met de sjablonen, niet vanuit Access. Ook al om het programmeren tot een minimum te beperken. Als je het netjes opzet, kun je met minder dan 10 regels programmeren alles voor elkaar hebben. En die kun je van mij wel krijgen :).

Precies de Word Sjablonen, maar die moet ik dus in Access zien te krijgen ;)
 
Doe ons een lol, en haal die quotes weg; lijken mij nergens voor nodig in je antwoorden :).
 
Die hebben dus een Pulldown en wat ik zei met de documenten op de C schijf staan waaruit je dat document via templates in Access kan krijgen. De vraag is dus via de Wizard kan je een besturingselement gebruiken en ik denk dat dat zo een pulldown inzit, maar daaraan moeten macro's hangen die naar die brief gaan.
Dit blijft voor mij abacadabra; ik snap na een paar keer lezen nog steeds niet wat er staat, laat staan wat je bedoelt. Een 'document via templates in Access krijgen'? Nogmaals: je kunt een sjabloon (template in jouw taal) best koppelen aan Access, en aansturen vanuit Access. Dat is dus een hoop programmeerwerk (je moet de complete Word omgeving vanuit Access aanroepen en beheren) maar an sich te doen. Een keuzelijst maken waarin alle sjablonen staan is dus óók te doen (ook een hoop programmeerwerk van een wat hoger niveau) en de twee combineren zal uiteindelijk óók te programmeren zijn. Een document opslaan in Access? Daar stopt het bij mij een beetje. Ik werk veel met Word documenten waarvan ik de link opsla in Access, maar nooit het complete document. Vind ik ook onzinnig en maakt de db nodeloos groot en onhandig.

En wat je bedoelt met 'macro's hangen die naar die brief gaan' is mij dus ook onduidelijk. Als ik verwijzingen naar documenten in een tabel opsla, dan kun je dat document simpel openen door een OnClick event aan dat veld te hangen die het document opent. Snel en makkelijk.

Wellicht is het handiger als je de (met wat dummy data gevulde) db kan posten, want dan wordt het hopelijk allemaal een stuk helderder.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan