Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Probleme mit Serienbrief per Button aus Access

Begonnen von Lolana, März 13, 2013, 12:43:27

⏪ vorheriges - nächstes ⏩

Lolana

Hallo,

die ganze Zeit funktionierte der Serienbrief aus Access einwandfrei, der VBA Code wurde noch unter Access XP erstellt und es lief trotzdem auch noch unter Access 2010.
Jetzt wurden in der letzten Zeit Office-Updates ausgeführt und ich denke dass es wohl daran liegt.

Beschreibung:

1.) Auf dem Netzlaufwerk Z liegen verschiedene Word-Dokumente welche alle als Serienbrief erstellt worden sind- die Quellen sind verschiedene Abfragen aus der Datenbank (ebenfalls auf dem Netzlaufwerk). Öffnet man dieses Dokumente - verbinden sich diese mit der entsprechenden Abfrage - und man kann die Feldinhalte der Abfrage in dem Dokument sehen.

2.) In Access ist in einem Formular ein Button - klickt man darauf sollte sich das entsprechende Word-Dokument öffnen und die entsprechenden Daten anzeigen.

Problem: Macht es aber nicht mehr - das entsprechende Word-Dokument öffnet sich zwar, jedoch nur ohne Daten - es stehen nur die Feldnamen in dem Dokument und die Verbindung zur Datenquelle ist weg - ich habe schon alles mögliche ausprobiert - aber ich bin mit meinem Latein am Ende :-(.
Irgendetwas muss sich verändert haben , aber ich sehe nicht was- kann mir jemand vielleicht helfen? Danke! LG Lolana

Hier das VBA-Script (das hier einmal .dot und einmnal .doc steht ist normal war schon vorher so)

Private Sub cmdMailinganWordZWV_Click()

Dim doc As String
Dim Word As Object

If Me!NumeroCooperation Like "GRK/ED*" Or Me!NumeroCooperation Like "CDFA*" Then

doc = "Z:\pool\referat_4\2. Modèles conventions allocation-Zuwendungsverträge\Vertrag_GRK.dot"
   

   Set Word = CreateObject("Word.Application")
   
   If Word Is Nothing Then
   MsgBox "Konnte keine Verbindung zu Word herstellen!", 16, "Problem"
   Exit Sub
   End If

   With Word
   .Visible = True
   .Documents.Open doc
   End With

Else
doc = "Z:\pool\referat_4\2. Modèles conventions allocation-Zuwendungsverträge\Vertrag_" & Left(Me!NumeroCooperation, InStr(1, Me!NumeroCooperation, "-") - 1) & ".doc"
   

   Set Word = CreateObject("Word.Application")
   If Word Is Nothing Then
   MsgBox "Konnte keine Verbindung zu Word herstellen!", 16, "Problem"
   Exit Sub
   End If

   With Word
   .Visible = True
   .Documents.Add doc
   
   
   End With

End If
End Sub




DF6GL

Hallo,

dass im ersten IF-Zweig eine dot-Datei geöffnet wird (und nicht als Vorlage für ein Dokument) , sehe ich etwas problematisch an...  Das ist aber hier eher nur am Rande zu bemerken.


Ohne weitere Untersuchungen über das Verhalten mit der Datenquelle (Kann bei manueller Bedienung von Word , einerseits beim Erzeugen eines neuen Dokumentes aus der Dot-Datei , andererseits durch Öffnen einer Doc-Datei, man sich mit der Datenquelle verbinden? Welche Fehler(meldungen) gibt es dabei? ) kann auch eher kein konkreter Ratschlag gegeben werden. Oft sind in solchen fehlende/falsche Userrechte auf die Netzwerk-Verzeichnisse die Ursache...



Eine Möglichkeit, die durch Updates verursacht werden könnte, ist die Installation des "MS Office File Validation Add-Ins", das durch seine aufwändige Viren-Check-Funktion die Performance , speziell bei Netzwerk-Betrieb, extrem nach unten zieht.


Wenn dieses Ding in der  Software-Liste zu finden ist, deinstallier es testweise.....

Lolana

Danke- das mit der dot und der doc Datei werde ich noch ändern.

Die Verbindungen klappen aus Word einwandfrei, man kann die Datenquelle direkt finden und es kann direkt ein Serienbrief erzeugt werden - auch das Erstellen einer neuen Dot -Datei funktioniert wenn ich diese mit der Datenbank verbinde. Die Verbindung Word > Access funktioniert  also- jedoch leider nicht mehr umgekehrt.
Und wenn ich über Access den Serienbrief aufrufe, gibt es überhaupt keine Fehlermeldungen, sondern das Dokument geht auf  mit den eingeblendeten Feldnamen und die Datenquelle ist weg. man muss das Word Dokument dann wieder neu verbinden.
Ist schon komisch...

Das mit den Userrechten, könnte ich auch mal nachkucken  - vor kurzem wurde unser Sever auf 2008 umgestellt und da könnte auch vielleicht etwas passiert sein.
Und das mit den "MS Office File Validation Add-Ins" werde ich auch mal überprüfen!

Vielen Dank schon mal! LG Lolana

Lolana

Ich habe den Fehler gefunden - ab Service Pack 3 von Office wird der SQL-Code  nicht mehr automatisch beim Verbinden von Word über Access ausgeführt, so dass der Serienbrief dann leer bleibt

in HKEYCURRENTUSER\Software\Microsoft\Office\14.0\Word\Options

neuer Schlüssel eingeben:

DWORD-Wert

Name eingeben: SQLSecurityCheck

Wert: 00000000

dann klappt wieder alles !!!

Danke trotzdem an DF6GL und an alle Leser, vielleicht hilfts ja jemandem :-)