Avatar billede sohl Nybegynder
06. januar 2003 - 00:30 Der er 5 kommentarer og
1 løsning

rapport udskrift

hey

jeg vil gerne have min database til at udskrife sådan en rapport ud fra min formular. jeg kunne imidlertid godt tænke mig at den "rapport" der kom kun omhandlede den aktuelle post som ser i formularen.

kan dette lade sig gøre eller kan man lave noget med at eksportere den aktuelle post til word?
Avatar billede hossein Nybegynder
06. januar 2003 - 01:48 #1
lav en forspørgsel og den bliver datakilden for din raport. Så på din formular har du en tekstboks for fx ID værdi fra din tabel, her er et ex for forspørgsel for raporten som har kritere:
      =[forms]![formular1]![AreaID]:

SELECT tblArea.AreaID, tblArea.LocalAuth, tblArea.FirstName, tblArea.LastName, tblArea.MiddleName, tblArea.Position
FROM tblArea
WHERE (((tblArea.AreaID)=[forms]![formular1]![AreaID]));

tekstboksen på formular hedder AreaID
Avatar billede hugopedersen Nybegynder
06. januar 2003 - 07:44 #2
Hvis det du ønsker er at udskrive en rapport der viser din indtastningsformular med den aktuelle post, så kan du bruge wizarden til at oprette en knap til 'Record operations' 'print record'
Avatar billede mugs Novice
06. januar 2003 - 17:24 #3
Du kan eksportere formularens aktuelle post til Word med disse VBA-koder. I din Word skabelon, laver du bogmærker hvor de enkelte data skal placeres. Derefter indsætter di denne kode i en kommandoknaps OnClick event:

Private Sub Kommandoknap21_Click()
Dim objword As New Word.Application
Dim WordDoc As New Word.Document
Set WordDoc = objword.Documents.Add("D:\VBA_ Funktioner\VBA\Opskrifter\Opskrift.doc")
Call InsertAtBookmark(WordDoc, "Opskrift", Me!Opskrift)
Call InsertAtBookmark(WordDoc, "Nr", Me!Nr)
objword.Visible = True
DoCmd.Hourglass False
End Sub

Hvor "Opskrift" og "Nr" er navnene på dine bogmærker og Me!Opskift og Me!Nr er navnene på formularens datafelter, der skal eksporteres.

("D:\VBA_ Funktioner\VBA\Opskrifter\Opskrift.doc")er placering og navn på det dokument der indeholder dine bogmærker. Derefter indsætter du nedenstående funktion i formularen:

Function InsertAtBookmark(objWordDoc As Word.Document, strBookmark As String, strText As String) As Boolean
With objWordDoc.Bookmarks
If .Exists(strBookmark) Then
.Item(strBookmark).Range.Text = strText
InsertAtBookmark = True
End If
End With
End Function

Jeg kan sende et eksempel i Access (fungerer også i XP). Blot læg din e-mail. Husk at sætte et checkmærke i Referencen til Word.
Avatar billede mugs Novice
06. januar 2003 - 17:32 #4
Hvis du senere vil læse det Word dokument der hører til Access aktuelle post i en formular, kan du søge efter posten i Access og benytte denne kode til at hente dokumentet. I eksemplet er dokumentet lagret i "C:\opskrifter\", og Me.Nr  er navnet på Dokumentet. Me.Nr er samtidig Access primære nøgle, og dokumentet skal have dette navn:

Private Sub Kommandoknap24_Click()
On Error GoTo err_open
Dim docname As String
Dim objword As Word.Application
Dim objdoc As Word.Document
Const dir As String = "C:\opskrifter\"
Const ext As String = ".doc"
docname = dir & Me.Nr & ext
On Error Resume Next
Set objword = GetObject(, "Word.Application")
Err.Clear
On Error GoTo err_open
If objword Is Nothing Then
Set objword = GetObject("", "Word.Application")
End If
objword.Visible = True
AppActivate "Microsoft Word"
objword.Documents.Open docname
Exit Sub
err_open:
MsgBox "fejlkode: " & Err.Number
End Sub
Avatar billede sohl Nybegynder
06. januar 2003 - 21:22 #5
ville være fedt hvis du sendte en eksempel ralf@riders.dk
Avatar billede mugs Novice
06. januar 2003 - 21:28 #6
Sendt
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester