Query en tabel bijwerken in VBa en Access

Status
Niet open voor verdere reacties.

bartprins999

Gebruiker
Lid geworden
11 jul 2011
Berichten
11
Hallo allemaal,

Misschien dat jullie me kunnen helpen:

Ik ben bezig om in Access een koppeling met een een wordsjabloon te maken waarin een herinneringsbrief opgemaakt wordt. De bedoeling is dat de brief geprint wordt en vervolgens een status meekrijgt zodat het voor het herinneringstraject duidelijk is dat er reeds een herinnering verzonden is. Ik werk met name vanuit een tabel "Klanteninvoer"

De code die ik tot nu toe gebruikt heb is de volgende :

--------------
Private Sub knpHerinneringen_Click()

'-------------------------------------------------------------------
'CODE OM WORD TE OPENEN MET EEN SJABLOON VOOR HERINNERINGEN
'-------------------------------------------------------------------

On Error GoTo ErrHandler5631

'Herinnering voor de standaardlade
Dim Cancel As String
Cancel = MsgBox("Staat de standaardprinter op lade 4 ingesteld ?", vbYesNo)
If Cancel = vbNo Then
MsgBox ("Printen geannuleerd, stel eerst de standaardprinter in op lade 4")
End
End If

'Word aanroepen met sjabloon
Dim appword As New Word.Application

With appword
' document openen
.Documents.Open "\\DATA\Herinnering.dotx"
.Visible = True
.DisplayAlerts = wdAlertsNone

'de query aanroepen voor de merge
.ActiveDocument.MailMerge.OpenDataSource Name:="\\DATA\DATABASE.accdb", linktosource:=True, Connection:="QUERY QueryHerinneringen", _
SQLStatement:="SELECT * FROM [QueryHerinneringen]"

.ActiveDocument.MailMerge.Execute
.ActiveDocument.PrintOut
.Visible = False

'Bericht
MsgBox ("Het printen is gelukt, Word wordt nu afgesloten..."), vbOKOnly

'sluiten
.Quit savechanges:=False

'----------------
ErrHandler5631:
If Err.Number = 5631 Then
' Er zijn geen herinneringen om te verzenden vanuit de mailmerge query
SetFocus
MsgBox ("Er zijn geen herinneringen om te verzenden."), vbOKOnly
'afsluiten
.Quit savechanges:=False
Exit Sub

End If
End With
End Sub
-------------------------------

In de query heb ik de vereiste gegevens opgenomen, 21 dagen nadat er een factuur verzonden etc..

Heeft een van jullie een idee hoe ik ervoor kan zorgen dat mijn tabel nu een extra "vinkje" meekrijgt zodat deze de volgende keer geen herinnering krijgt?

Ik heb van alles geprobeerd maar krijg onder andere de melding dat de query niet updatable is e.d.

Alvast enorm bedankt voor het lezen van mijn probleem !

Met vr gr

Bart
 
Je moet je tabel met facturen bijwerken middels een Ja/Nee kolom "Herinnering verstuurd".
Deze tabel werk je dan bij nadat je herinneringen zijn aangemaakt.
Je query moet je dan zo aanpassen dat deze alleen die gevens ophaalt waarvoor geldt dat Ka/Nee de waarde -1 heeft.

Of, beter nog (zeker als je zoals gewoonlijk meerdere herinneringen wilt versturen), een aparte tabel tblHerinnering maken.
Deze koppel je aan je facturentabel.
Vervolgens rijen toevoegen aan deze tabel voor alle openstaande facturen nadat je herinneringen zijn aangemaakt.

Tardis
 
Hoe bijwerken?

Bedankt voor de info, de manier met een extra tabel herinnering lijkt me de beste optie, heb je nog een voorstel hoe ik de tabel het beste bij kan werken ? Evt. met code ? Alvast enorm bedankt weer !

Edit ; Heb inmiddels een tabel herinneringen (tblHerinneringen) aangemaakt met een relatie tot mijn tabel tblKlanteninvoer. Ik begrijp alleen nog niet hoe ik nu deze gegevens uit de query bij kan laten werken op de tabel. Ik gebruik de query om te bepalen wie er 21 dagen na de eerste datum een herinnering zou moeten krijgen. Vervolgens zou de tabel tblHerinneringen bijgewerkt moeten worden, dit het liefste via code.

Ik hoef natuurlijk niet de volledige code te hebben hoor maar een beginnetje zou fijn zijn want ik zit goed vast op het moment

Gr

Bart
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan