Avatar billede sigyn Seniormester
09. september 2008 - 10:04 Der er 16 kommentarer og
2 løsninger

Accessrapport til Word

Hej alle

Jeg er ny her i foraet, men har allerede fået en del hjælp. Nu er jeg dog kørt fast.
Jeg har en accessdatabase, hvor jeg er interesseret i at få noget af rapporten over i et worddokument. Rapportuddraget vælges ved hjælp af nogle combobokse i en formular.

Ved hjælp af nedenstående eksempel, som jeg har fundet her, kan jeg godt få tekstboksene over i min wordskabelon, men hvordan får jeg rapporten med ? evt som snapshot, så mine formaterineger etc. bevares ?


Private Sub Kommandoknap8_Click()
On Error GoTo Err_Kommandoknap8_Click


Dim objword As New Word.Application
Dim worddoc As New Word.Document

Set worddoc = objword.Documents.Add("h:\Dokumenter\Acces_SAP\Bogmærketest2.dot")

Call InsertAtBookmark(worddoc, "bmkNavn", Me!txtNavn)
Call InsertAtBookmark(worddoc, "bmkTekst", Me!txtTekst)
Call InsertAtBookmark(worddoc, "bmkRapport", Me!rptWordTest)

objword.Visible = True
DoCmd.Hourglass False



Exit_Kommandoknap8_Click:
    Exit Sub

Err_Kommandoknap8_Click:
    MsgBox Err.Description
    Resume Exit_Kommandoknap8_Click
   
End Sub

Public 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
Avatar billede jensen363 Forsker
09. september 2008 - 10:08 #1
Hvis du vælger at udskrive rapporten til skærm, er der mulighed for eksportere/gemme rapporten som snapshot
Avatar billede sigyn Seniormester
09. september 2008 - 10:08 #2
Forresten det er word og access 2000
Avatar billede sigyn Seniormester
09. september 2008 - 10:10 #3
Det ved jeg, men jeg skal have den ind i et styret dokument med sidehovede mm
Avatar billede jensen363 Forsker
09. september 2008 - 10:13 #4
Kender ikke nok til Word til at kunne hjælpe dig ... benytter selv primært Excell som rapportskabelon hvis ikke Access er tilstrækkeligt
Avatar billede sigyn Seniormester
09. september 2008 - 12:41 #5
Og hvordan gør du så det ?, altså laver en rapport i Excel. Jeg har styr på både export, sammenkædning og MSQ.
Avatar billede jensen363 Forsker
09. september 2008 - 13:04 #6
Mine data fra Access til en given excel-rapportpakke fås som hovedregel fra een eller flere forespørgsler. Resultatet af disse kopieres over til et allerede oprettet regneark, hvori dette placeres i et nærmere defineret celleområde.

Eksempel :

Public Function sCopyRSToNamedRange_001()
'Copy Arrival_5_Weeks_1 records to a named range
'on an existing worksheet on a workbook

Dim objXL As Excel.Application
Dim objWkb As Excel.Workbook
Dim objSht As Excel.Worksheet
Dim db As Database
Dim rs As Recordset

Const conSHT_NAME = "Short Term Bookings"
Const conWKB_NAME = "\\Cphfil-01\managementflash\MailReport\ManagementFlash.xls"
Const conRANGE = "A131:I159"

  Set db = CurrentDb
  Set objXL = New Excel.Application
  Set rs = db.OpenRecordset("Arrival_5_Weeks_1")
  With objXL
    .Visible = False
    Set objWkb = .Workbooks.Open(conWKB_NAME)
    On Error Resume Next
    Set objSht = objWkb.Worksheets(conSHT_NAME)
    If Not Err.Number = 0 Then
      Set objSht = objWkb.Worksheets.Add
      objSht.Name = conSHT_NAME
    End If
    Err.Clear
    On Error GoTo 0
    objSht.Range(conRANGE).CopyFromRecordset rs
   
  objWkb.Close SaveChanges:=True
  objXL.Quit
   
  End With
   
  Set objSht = Nothing
  Set objWkb = Nothing
  Set objXL = Nothing
  Set rs = Nothing
  Set db = Nothing

End Function
Avatar billede jensen363 Forsker
09. september 2008 - 13:08 #7
Herefter benyttes regneregler i selve Excel til at indordne data i forhold til den aktuelle rapportskabelon - typisk VLookup() og lignende funktioner
Avatar billede sigyn Seniormester
09. september 2008 - 13:11 #8
Øh det er jeg ikke helt sikker på at jeg forstår, det med records har jeg ikke helt styr på endnu. Men jeg kan sagtens finde ud af, at få mine data over i excel. Men hvordan laver du selve rapporten i excel, altså den givne rapportpakke du nævner ? (nu er vi vist i den forkerte kategori)
Avatar billede jensen363 Forsker
09. september 2008 - 13:18 #9
I eksemplet vist, har jeg en rapport benævnt "Short Term Bookings", svarende til navnet på arkfanen i regnearket ManagementFlash.xls.

I celleområdet A1 til Í121 har jeg min skabelon opbygget ( det som slutbrugeren ser ), og i et skjult område af regnearket, A131 - I159 indsættes data fra Access ved hjælp af funktionen i Access.

Herefter benytter jeg enten regneregler som VLookup() eller direkte henvisninger til dette skjulte område direkte i regnearket
Avatar billede sigyn Seniormester
09. september 2008 - 13:28 #10
Og selve skabelonopbygningen er "bare" formatering etc ?
Avatar billede jensen363 Forsker
09. september 2008 - 13:51 #11
Det er en kombination af logo, formattering, grafer m.v.
Avatar billede sigyn Seniormester
10. september 2008 - 09:54 #12
Nu har jeg jo en god rapport i Access, som jeg sagtens kan eksportere fra, den mangler bare lidt i form af et word-sidehovede. Når jeg eksporterer den til word (.rtf  format kan sagtens bruges, og det SKAL over i word), vil jeg gerne have den ind i en .dot fil, men hvis jeg bruger nedenstående overskriver den jo bare min .dot fil. Kan det ikke tilrettes lidt så den bruger .dot filen efter hensigten, og man så selv bestemmer hvor det skal gemmes.

Function Makro21()
On Error GoTo Makro21_Err

    DoCmd.OutputTo acReport, "rptWordTest", "RichTextFormat(*.rtf)", "h:\dokumenter\Acces_SAP\Eksporttest.dot", False, ""


Makro21_Exit:
    Exit Function

Makro21_Err:
    MsgBox Error$
    Resume Makro21_Exit

End Function
Avatar billede jensen363 Forsker
10. september 2008 - 10:17 #13
Du spurgte selv :-)
Avatar billede jensen363 Forsker
10. september 2008 - 10:19 #14
Problemet med den metode du benytter til eksport er netop at du ikke kan eksportere formatteringen fra Access med over
Avatar billede sigyn Seniormester
10. september 2008 - 11:19 #15
Den tager faktisk tekstformateringen med over, men ikke streger, rammer, baggrundsfarver etc., det kan jeg godt leve med, i det aktuelle tilfælde. Men jeg vil stadig gerne have det proppet ind i en word-skabelon, som har et sidehovede, hvor jeg kan bruge bogmærkerne, og hvor jeg kan angive udgavenr. Worddokumentet vil altid kun være et uddrag af rapporten.
Avatar billede jensen363 Forsker
10. september 2008 - 11:27 #16
Når jeg nævner formatteringen ... drejer dig sig om den aktuelle stylesheet formattering som rapporten bygger på
Avatar billede sigyn Seniormester
21. oktober 2008 - 12:55 #17
lukket, er ikke lige kommet så meget videre
Avatar billede sigyn Seniormester
21. oktober 2008 - 13:43 #18
Har ikke rigtigt held med at lukke
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