PDA

Vollständige Version anzeigen : Serienbrieffunktion von Access nach Word


Speedy
08.08.2001, 09:02
Hallo !

Ich habe eine Abfrage erstellt mit einer Suchoption über ein Formular.´Nun möchte ich das Ergebnis dieser Abfrage(AdressDaten) nach Word exportieren und in Serienbrieffelder integrieren, durch den Anwender die Vorlage editieren lassen und dann ausdrucken( erledigt der Anwender über Word selbst).
Könnt Ihr mir bitte einen Tip geben , wie ich die Daten exportieren kann.(DDE, aber wie?????)

Gruß Speedy

sekoe
08.08.2001, 11:51
Schau mal in der Online-Hilfe unter DoCmd.TransferText nach. Damit würde ich eine Textdatei erstellen. Über word kannst Du dann ganz einfach über "Datenquelle Auswählen" den Serienbrief starten

Phillip-Berlin
08.08.2001, 12:05
ich hab ein beispiel gebastelt

www.serve-u.de/access (http://www.serve-u.de/access)
acces-word

Speedy
08.08.2001, 12:06
Danke für den Tip!
Ich möchte eigentlich das die Datenquelle nicht in Word geöffnet wird,sondern automatisiert aus Access heraus. Wie erstelle ich dann eine Steuerdatei, die ich eventuell über einen DDE Kanal nutzen kann?

Gruß
Speedy

Phillip-Berlin
08.08.2001, 12:12
öh
schätze du hast mein beispiel noch nicht gesehen

sekoe
08.08.2001, 12:13
High, hier mal nur grob beschrieben wie das gehen könnte (Anpassen !!!)
Beachte auch, dass Du den Verweis:
Microsoft Word 8.0 Object Library gesetzt hast

Public Function GetWord() As Long


Dim wrd As New Word.Application

On Error Resume Next
Set wrd = GetObject(, "Word.Application")

Err.Clear
On Error GoTo Function_Error

wrd.Visible = True

' Dokumentvorlage öffen
wrd.Documents.Add "[Name der Dokumentvorlage]"

' Serienbrief - Autovorschau aktivieren
wrd.ActiveDocument.MailMerge.OpenDataSource "[Name der TXT-Steuerdatei]", , False, True
wrd.ActiveDocument.MailMerge.Execute


Function_Exit:
Set wrd = Nothing
Exit Function

Function_Error:
MsgBox Err.Number & " " & Error, vbCritical
Stop
Resume Next

End Function

Public Function fktDetectWord(strPfad As String) As Boolean

Dim hwnd As Long

hwnd = FindWindow(strPfad, 0)
If hwnd = 0 Then
fktDetectWord = False
Else
fktDetectWord = True
End If

End Function

Speedy
08.08.2001, 12:22
Ihr seid echt der Hit!!
Ich muss die Beispiele nur erst ausprobieren!
@ phillip-Berlin

Ich hab Deinen Beitrag tatsächlich erst nach meiner Antwort gesehn!
Deinen Link hab ich gleich genutzt und extrahiert.Allerdings gibts die Meldung, das ich keine Berechtigung hab, um in den Entwicklungsmodus zu schalten?! Wieso das?

@sekoe

Probier Deinen Tip auch gleich aus! Wenn`s funzt bin ich gleich einen riesen Schritt weiter!!

Danke Euch beiden!

Speedy