Hallo.
Beschreibung des Problems:
Ich habe eine Word2000-Vorlage mit einigen Makros...
-
Vorlage liegt am Server.
-
Word-Dokument wird am Client geöffnet und es wird ein Text geschrieben.
-
Über Schaltfläche "Speichern" wird ein VBA-Funktion aufgerufen, die dann das Dokument unter einem vorgegebenen Namen speichert.
-
Außerdem gibt es noch eine "Drucken"-Schaltfläche, über die das Dokument zuerst gespeichert (in Datenbank und als Word-Dokument) wird und dann ausgedruckt.
-
PROBLEM: Das Speichern funktioniert nicht immer. Dokument wird geschloßen, aber es wird nicht gespeichert.
Wer kann mir helfen?
Drucken (Code):
Sub PrintSimple()
On Error GoTo PrintSimpleErr:
If b_Object Is Nothing Then 'kein Object vorhanden
MsgBox "Fehler beim Drucken des Dokumentes !" & vbCrLf & _
"Der Server ist derzeit nicht verfügbar !" & vbCrLf & _
"Versuchen Sie es später !", vbCritical
Exit Sub
End If
ActionSave
ActiveDocument.PageSetup.FirstPageTray = 266
ActiveDocument.PageSetup.OtherPagesTray = 266
Application.PrintOut filename:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentContent, Copies:=1, Pages:="", PageType:=wdPrintAllPages, _
Collate:=True, Background:=True, PrintToFile:=False
ActiveDocument.Saved = True
Exit Sub
PrintSimpleErr:
MsgBox Err.Number & " " & Err.Description & vbCrLf & "Fehler beim Drucken des Dokumentes !" & vbCrLf & _
"Der Server ist derzeit nicht verfügbar !" & vbCrLf & _
"Versuchen Sie es später !", vbCritical
End Sub
Speichern (Code):
Sub ActionSave()
Dim Text As String
On Error GoTo Error:
Text = ActiveDocument.Content.Text
If Len(Text) < 5 Then
If MsgBox("Achtung ! Dokument hat keinen Inhalt !" & vbCrLf & _
"Wollen Sie wirklich speichern ?", vbQuestion + vbYesNo) = vbNo Then Exit Sub
End If
b_Object.Text = b_Object.TextT(Text)
'b_Object.TextTWord (ActiveDocument.Path & "\" & ActiveDocument.Name) 'in Wordformat abspeichern
ActiveDocument.Saved = False
ActiveDocument.SaveAs ActiveDocument.Path & "\" & ActiveDocument.Name
b_Object.Tagesliste.sys_Reload
b_Object.sys_Save (0) 'Shallow Save
'Backup Save
'----------------------------------------------------------------------------------------------------
On Error Resume Next
If BefundBackupPath <> "" Then ActiveDocument.SaveAs filename:=BackupPath & ActiveDocument.Name
'----------------------------------------------------------------------------------------------------
On Error GoTo Error:
If Text = "" Then
MsgBox "Fehler beim Speichern !", vbOKCancel + vbCritical
Exit Sub
End If
ActiveDocument.Saved = True
Application.RecentFiles.Maximum = 0
Exit Sub
Error:
MsgBox "Fehler beim Speichern !", vbOKCancel + vbCritical
End Sub
Danke für die Hilfe im Vorraus!
John
|