Toon posts:

Koppeling Access en Word

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil een koppeling tussen Access maken. Ik heb een aantal klantgegevens in mijn access database staan die ik in Word wil krijgen. Hier wil ik namelijk een brief opstellen.

In Word heb ik met afdruk samenvoegen al een brief opgesteld met daarin de velden die ik uit de database wil hebben. Dit werkt verder goed, want de gegevens komen er netjes in te staan.

In de database kan gezocht worden naar klanten. Eenmaal een klant gevonden kan er op een button gedrukt worden waarna het Word document geopend word doormiddel van FollowHyperlink (""). Maar op deze manier worden alle klanten geopend, en ik wil specifiek die ene klant in het Word document hebben.

Hebben jullie hier een oplossing voor?

  • Boss
  • Registratie: September 1999
  • Laatst online: 00:09

Boss

+1 Overgewaardeerd

Ja, die heb ik :)

Ik weet niet hoeveel ervaring je hebt met Access, maar je zal hiervoor wat VBA nodig hebben. Via de code laat ik eerst een databestand genereren dat uit 2 regels bestaat: de veldnamen en de data, gescheiden voor tabs. Dit bestand sla ik op als mergedata.txt

In Word heb ik de merge documenten zo ingesteld dat ze mergen met dat databestand. Na het drukken op de briefmaakknop het volgende:

het databestand genereren en opslaan onder [naam van het databestand]
strSamenvoegDocument is de naam van het word documetn.

daarna de volgende code:
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Set oApp = CreateObject("Word.Application")
With oApp
  .Documents.Open (strSamenvoegdocument)
  .ActiveDocument.MailMerge.MainDocumentType = 0
  .ActiveDocument.MailMerge.OpenDataSource ([naam van het databestand])
  .ActiveDocument.MailMerge.Execute
  .Documents(strSamenvoegdocument).Close (False)
  .Visible = True
  .Activate
  .Show
  With .Selection.Find
    .Forward = True
    .ClearFormatting
    .MatchWholeWord = True
    .MatchCase = False
    .Wrap = wdFindContinue
    .Execute FindText:="<<U kunt beginnen met typen>>"
  End With
End With


Code is een beetje copy paste uit een van mn projecten, dus wellicht moet je het een beetje bijschaven :)

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.


Verwijderd

Topicstarter
Ik ben nog niet helemaal thuis in VBA, maar ik zal er mee aan de slag. Thx voor de code.