06. oktober 2005 - 10:21Der er
6 kommentarer og 1 løsning
Brevfletning med kommandoknap
Jeg har i en formular oprettet en kommandoknap til udskrivning af brev. Når jeg trykker på knappen kører den også fletningen igennem men dataene kommer ikke frem.
der kommer en fejl: Run-time error "5631! Word kunne ikke flette hoveddokumentet og datakilden, fordi dataposterne var tomme, eller fordi ingen af posterne opfylder kriterierne i din forespørgsel. Trykker jeg så på debug kommer stien: Private Sub Kommandoknap110_Click() Dim Wrd As New Word.Application Wrd.Visible = True Wrd.Activate Wrd.Documents.Open "F:\Grunde\Skabeloner_dot\Bekr på res u rabat.dot\" Set Wrd = Nothing
End Sub
HVis jeg så lykker programmet og starter det op igen og trykker på knappen begynder fletninge og så kommer alle dataerne frem.
Wrd.Documents.Open "F:\Grunde\Skabeloner_dot\Bekr på res u rabat.dot\" kan du ikke ændre det til en mappe som er simpelt navngivet Wrd.Documents.Open "F:\test\"
Jeg gemmer ikke dokumentet som flettes, og hvis den gemmes bliver den gemt som med et nyt navn. Flettedokumentet er en skabelon, derfor har jeg kaldt den *.dot
Når du skal lukke formularen for at få data med over i Word, tyder det på at tabellen ikke er opdateret når du fletter. Derfor er det nødvendigt at genforespørge inden du fletter. Dette gøres med en Requery:
Private Sub Kommandoknap110_Click() Dim Wrd As New Word.Application Wrd.Visible = True Wrd.Activate Wrd.Documents.Open "F:\Grunde\Skabeloner_dot\Bekr på res u rabat.dot\" Set Wrd = Nothing End Sub
Nu vil Access ganske vist stille sig på første post i forespørgslen. Men det må kunne gøres med noget kode:
Dim Wrd As New Word.Application, ID as long ID = ME![Din primærnøgleID] ME.Filteron = False Me.Requery Me![Din primærnøgleID].Setfocus docmd.findrecord ID Wrd.Visible = True Wrd.Activate Wrd.Documents.Open "F:\Grunde\Skabeloner_dot\Bekr på res u rabat.dot\" Set Wrd = Nothing
Der gik vist lidt kludder i det. Prøv med denne kode:
Dim Wrd As New Word.Application, ID as long ID = ME![Din primærnøgleID] ME.Filteron = False Me.Requery Me![Din primærnøgleID].Setfocus docmd.findrecord ID Wrd.Visible = True Wrd.Activate Wrd.Documents.Open "F:\Grunde\Skabeloner_dot\Bekr på res u rabat.dot\" Set Wrd = Nothing
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.