Serienbrief und Access-Project
Die Tabelle eines MS-Access 2007 Projektes ist die Datenquelle eines MS-Word 2007 Serienbriefes. Der bei MailMerge angegebene Dateiname der Datenquelle ist das Projekt. OpenDataSource schlägt fehl.
Hallo Experten,
unser MS-Access Project (Name.adp) soll mit dem unten aufgeführten Code einen existierenden Serienbrief aufrufen und die Felder von T_Anschrift übergeben. T_Anschrift liegt auf einem SQL-SERVER, der Verbindungstyp ist die integrierte Sichheit von Windows NT.
Nach dem Start des codes öffnet sich Word mit der Meldung:
Name.adp ist zur Bearbeitung gesperrt 'von einem anderen Benutzer'
Möchten Sie
- schreibgeschützte Kopie öffnen
- Lokale Kopie erstellen und Änderungen später zusammenführen
- Benachrichtigen, wenn das Original zur Verfügung steht
Wenn z.B. schreibgeschützte Kopie angeklickt wird, wird "irgendeine Qelle" geöffnet mit vielen Sonderzeichen und die Trennzeichen im Steuersatz werden abgefragt.
Am Ende kommt dann die Meldung: "Word konnte die Datenquelle nicht öffnen".
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Set wdApp = CreateObject("Word.Application")
Set wdDoc = wdApp.Documents.Open(Vorlagen & "S_Druck" & MaKü & ".docx")
wdApp.Visible = True
dB_Source = "C:\Name.ADP"
With wdApp.ActiveDocument.MailMerge
.MainDocumentType = wdFormLetters
.OpenDataSource Name:=dB_Source, _
ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, AddToRecentFiles:=False, _
Connection:="TABLE T_Anschrift", SQLStatement:="SELECT * FROM T_Anschrift", SQLStatement1:=""
wdApp.ActiveWindow.ActivePane.View.Zoom.PageFit = wdPageFitBestFit
End With
Set wdApp = Nothing
Set wdDoc = Nothing
In allen gefundenen Beiträge ist bei der DataSource Name:= eine *.mdb und keine .adp angegeben. Kann es daran liegen und hier eine andere Angabe erforderlich sein ?
Danke für jede Antwort, auch wenn sie nicht gleich die Lösung bringt.
PCFJKG
End With
Set wdApp = Nothing
Set wdDoc = Nothing
Hallo Experten,
unser MS-Access Project (Name.adp) soll mit dem unten aufgeführten Code einen existierenden Serienbrief aufrufen und die Felder von T_Anschrift übergeben. T_Anschrift liegt auf einem SQL-SERVER, der Verbindungstyp ist die integrierte Sichheit von Windows NT.
Nach dem Start des codes öffnet sich Word mit der Meldung:
Name.adp ist zur Bearbeitung gesperrt 'von einem anderen Benutzer'
Möchten Sie
- schreibgeschützte Kopie öffnen
- Lokale Kopie erstellen und Änderungen später zusammenführen
- Benachrichtigen, wenn das Original zur Verfügung steht
Wenn z.B. schreibgeschützte Kopie angeklickt wird, wird "irgendeine Qelle" geöffnet mit vielen Sonderzeichen und die Trennzeichen im Steuersatz werden abgefragt.
Am Ende kommt dann die Meldung: "Word konnte die Datenquelle nicht öffnen".
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Set wdApp = CreateObject("Word.Application")
Set wdDoc = wdApp.Documents.Open(Vorlagen & "S_Druck" & MaKü & ".docx")
wdApp.Visible = True
dB_Source = "C:\Name.ADP"
With wdApp.ActiveDocument.MailMerge
.MainDocumentType = wdFormLetters
.OpenDataSource Name:=dB_Source, _
ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, AddToRecentFiles:=False, _
Connection:="TABLE T_Anschrift", SQLStatement:="SELECT * FROM T_Anschrift", SQLStatement1:=""
wdApp.ActiveWindow.ActivePane.View.Zoom.PageFit = wdPageFitBestFit
End With
Set wdApp = Nothing
Set wdDoc = Nothing
In allen gefundenen Beiträge ist bei der DataSource Name:= eine *.mdb und keine .adp angegeben. Kann es daran liegen und hier eine andere Angabe erforderlich sein ?
Danke für jede Antwort, auch wenn sie nicht gleich die Lösung bringt.
PCFJKG
End With
Set wdApp = Nothing
Set wdDoc = Nothing
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 144230
Url: https://administrator.de/contentid/144230
Ausgedruckt am: 24.11.2024 um 05:11 Uhr
2 Kommentare
Neuester Kommentar
N'abend,
warum nutzt du ein Projekt? Eine .accdb sollte vollkommen reichen.
Ich würde erst mal meinen Serienbrief entsprechend einstellen:
1. erstelle ein Abfrage für den Serienbrief in Access
2. öffne deinen Brief in Word
3. verknüpfe diesen mit der Abfrage
4. erstelle die Seriendruckfelder
5. teste ob der Seriendruck funktioniert
Später rufst du dann nur noch den Word-Serienbrief aus Access auf.
Über die Abfrage kannst du dann vorher steuern, was, wie gedruckt werden soll.
Grüße aus Rostock
Wolfgang
(Netwolf)
warum nutzt du ein Projekt? Eine .accdb sollte vollkommen reichen.
Ich würde erst mal meinen Serienbrief entsprechend einstellen:
1. erstelle ein Abfrage für den Serienbrief in Access
2. öffne deinen Brief in Word
3. verknüpfe diesen mit der Abfrage
4. erstelle die Seriendruckfelder
5. teste ob der Seriendruck funktioniert
Später rufst du dann nur noch den Word-Serienbrief aus Access auf.
Über die Abfrage kannst du dann vorher steuern, was, wie gedruckt werden soll.
Grüße aus Rostock
Wolfgang
(Netwolf)