VBA: Felder eines asugefüllten Formulars sind beim Drucken leer ...

14/01/2009 - 13:47 von Nicolas Nickisch | Report spam
Hi NG,

Problem: Ich fülle per VBA-Code aus einer Access-Anwendung Felder eines
Formulars, basierend auf einer Word-Vorlage aus.

Wenn dieser Code abgearbeitet ist, dann stehen brav alle Angaben im Formular
(hier: Name, Aktenzeichen etc.).

Der VBA-Code veranlasst dann auch noch das Ausdrucken.

Und hier ist dann das Formular wieder leer :-((

Hàlt man mit dem Mauszeiger nun über dem 'Rückgàngig'-Icon inne, dann taucht
der Begriff 'Felder aktualisieren' auf. Scheinbar löst diese Aktion die
Löschung der bereits vrohandenen EIntragungen aus.
Interessanterweise àndert sich das Verhlaten von Word, sobald ich hàndisch
im leeren Formular Daten eingebe - dann wird alles korrekt gedruckt.

In der Tat habe ich in den Word-Optionen eingestellt, dass Felder beim
Drucken aktualisiert werden sollen - prinzipiell soll das allgemein auch so
bleiben; denke ich mir.

Konkret möchte ich natürlich in DIESEM Falle die Eintràge behalten und nict
aktualiseren.

Ich schàtze, ich müsste temporàr die Aktualisierung der Felder abschalten -
aber wie per VBA ?
Oder aber meine Methode, das Formular per VBA auszufüllen ist ungeeeignet.

Gruss Nico

Ich poste mal einige Zeilen Code:
With objword
.Visible = True
.Documents.Add vorlage, , , True


.ActiveDocument.FormFields("Aktenzeichen1").Result =
Me.GA_Versicherungsnummer_txt
.ActiveDocument.FormFields("name1").Result = Me.Proband_Name & ", "
& Me.Proband_Vorname & " *" & Me.Proband_GebDatum

'Hier soll das Untersuchungsdatum eingegeben werden
'.ActiveDocument.FormFields("UntersuchungDatum").Result =
Me!untersuchungsdatum_txt

.ActiveDocument.BuiltInDocumentProperties("Title") =
Me!GA_Auftrag_Nr_txt & ", " & Me!GA_Versicherungsnummer_txt
'.ActiveDocument.BuiltInDocumentProperties(wdpropertiesAuthor).value .ActiveDocument.BuiltInDocumentProperties("Keywords").Value =
Me!GA_Auftrag_Nr_txt & ", " & Me!GA_Versicherungsnummer_txt & _
", " & Me.Komb_Auftragstyp.Column(1)


.ActiveDocument.BuiltInDocumentProperties("Category") = "Messblatt,
" & Me!Komb_Auftragstyp.Column(1)
.ActiveDocument.BuiltInDocumentProperties("subject") =
"Versicherungsnummer: " & Me!GA_Versicherungsnummer & " " & _
Me.Proband_Name & ", " & Me.Proband_Vorname & ", *" &
Me.Proband_GebDatum_txt
'.ActiveDocument.CustomDocumentProperties.Add
Name:="Auftragsnummer", LinkToContent:=False, Type:=msoPropertyTypeString,
Value:=Me.GA_Auftraege_GA_Auftrag_Nr
.ActiveDocument.CustomDocumentProperties.Add
Name:="Proband_Geburtsdatum", LinkToContent:=False,
Type:=msoPropertyTypeString, Value:=Me.Proband_GebDatum

.ActiveDocument.Protect wdAllowOnlyFormFields
 

Lesen sie die antworten

#1 Christian Freßdorf
14/01/2009 - 14:06 | Warnen spam
Hi

hast Du evtl. Abschnittswechsel im Dokument?

Ich kenne das Phànomen nur, wenn der Formularschutz nicht richtig greift.
Prüf das mal beim Dokument, ob für alle Abschnitte der Formularschutz
gesetzt ist.(Welche Wordversion auch immer verwendet wird).

Gruß Christian
~~~~~~~~~~~~
Antworten / Rückmeldungen nur in die NG!
Co-Autor von »Microsoft Word-Programmierung.
Das Handbuch« (MS Press)

Ähnliche fragen