Avatar billede omp Novice
14. oktober 2001 - 21:58 Der er 2 kommentarer og
1 løsning

Access - Word

Hej !
Så røg den weekend !!
For ikke, at stirre mig blind på opgaven sprørger jeg derfor Eksperterne om til råds.
Jeg har fundet en stump programkode (Cut and Paste) som i nedenstående virker som den skal.
Nu vil jeg anvende den til at oprette eet brev for hver \"empolyees\" der findes i forespørgslen.
Er der en som har en god idé

Public Function CreateWordMemo()
\' Open a memo in Word and insert text - used by menu command.
   
    Dim rstEmployees As New ADODB.Recordset
    Dim appWord As New Word.Application
    Dim intPages As Integer, strMessage As String
   
    \' Open a recordset based on the EmployeesWithOpenIssues query.
    rstEmployees.Open \"EmployeesWithOpenIssues\", _
        CurrentProject.Connection, adOpenKeyset, adLockOptimistic

    \' If no one has open issues, display a message and exit.
    If rstEmployees.RecordCount = 0 Then
        DisplayMessage \"There are no open issues to announce.\"
        Exit Function
    End If

    \' Open a document based on the memo template
    \' move to the MemoToLine bookmark, and then display Word.
    With appWord
        .Documents.Add \"C:\\Database\\memo.dot\"
        .ActiveDocument.ShowSpellingErrors = False
        .Selection.GoTo wdGoToBookmark, Name:=\"MemoLine\"
        .Visible = True
    End With
   
    \' Loop through the recordset returned by the query, inserting
    \' the name of each employee into the document.
    Do Until rstEmployees.EOF
        appWord.Selection.TypeText rstEmployees!EmployeeName & \"  \"
        rstEmployees.MoveNext
    Loop
15. oktober 2001 - 11:09 #1
Hvis jeg forstår dig ret, så skal der bare flyttes lidt rundt på nogle af sætningerne:

Public Function CreateWordMemo()
\' Open a memo in Word and insert text - used by menu command.
   
    Dim rstEmployees As New ADODB.Recordset
    Dim appWord As New Word.Application
    Dim intPages As Integer, strMessage As String
   
    \' Open a recordset based on the EmployeesWithOpenIssues query.
    rstEmployees.Open \"EmployeesWithOpenIssues\", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

    \' If no one has open issues, display a message and exit.
    If rstEmployees.RecordCount = 0 Then
        DisplayMessage \"There are no open issues to announce.\"
        Exit Function
    End If

    \' Open a document based on the memo template
    \' move to the MemoToLine bookmark, and then display Word.
    Do Until rstEmployees.EOF
        With appWord
            .Documents.Add \"C:\\Database\\memo.dot\"
            .Visible = True
            .ActiveDocument.ShowSpellingErrors = False
            \'indsæt hvert felt fra forespørgslen
            .Selection.Goto wdGoToBookmark, Name:=\"MemoLine\"
            .Selection.TypeText rstEmployees!EmployeeName & \"  \"
           
            .Selection.Goto wdGoToBookmark, Name:=\"NæsteBookmark\"
            .Selection.TypeText rstEmployees!Adresse
           
            \'...
            \'...
           
            rstEmployees.MoveNext
        End With
    Loop
    rstEmployees.Close
    Set rstEmployees = Nothing
End Function

Giver det mening?

/Thomas
Avatar billede omp Novice
15. oktober 2001 - 12:03 #2
Jeg prøver
Avatar billede omp Novice
15. oktober 2001 - 18:12 #3
OK..... det virkede.
Det er det med skoven man ikke kan se for....
Jeg havde bare ikke taget mig iagt for d..... brugere, så da jeg lagde den ud, var der en som som lige kørte en forespørgsel med over 500 kontaktpersoner......
Det gik ikke så godt, idet Word opretter, som den skal, eet memo for hver kontaktperson.
- but any way
Det virkede, men jeg må nok finde en anden løsning.
Mvh
OMP 
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