Jump to content

Access97 - Macro: Aktion PrintOut wurde abgebrochen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo,

 

ich hoffe, ihr könnt mir helfen. Ich muß etwas "reparieren" was ein Kollege erstellt hat. Er hat eine Access DB erstellt, wobei die Kollegen nur über Masken Daten eingeben und durch ein Formular ausgeben können.

 

Ein Kollege bekommt eine Fehlermeldung, wenn er das Formular ausdrucken will. Also auf der Formularmaske das Druckersymbol anklickt.

 

"Die Aktion PrintOut wurde abgebrochen. Sie haben eine Methode des DoCmd-Objects verwendet, um in Visual Basic eine Aktion auszuführen, haben aber dann in einem Dialogfeld auf 'Abbrechen' geklickt. Sie haben z.B. mit der Close-Methode ein geändertes Formular geschlossen und haben dann in dem Dialogfeld, das Sie danach fragt, ob Sie die an dem Formular Änderungen speichern möchten, auf 'Abbrechen' geklickt."

 

Ich bin ziemlich ratlos. Vor allem weil es nur einen betrifft. Ist da in dem VB Script in der Access DB ein Fehler? Oder ist etwas bei der Konfiguration dieses PCs etwas verkehrt?

 

Gruß Esta

Link zu diesem Kommentar

Hallo Basti,

 

da ich die Access DB nicht verfaßt habe, kann ich dir im moment nicht alles beantworten. Werde mich aber mit dem Kollegen in Verbindung setzen und ihn "ausquetschen". ;)

 

Ja alle Benutzer haben die gleiche Access Version.

Nein, einen Debugger habe ich noch nicht laufen lassen. Müßte ich auch erstmal suchen, wie das in Access geht.

 

Hier erstmal das Stück aus dem Script, welches für den Druck verantwortlich ist:

 

Private Sub PrintForm_Click()

On Error GoTo Err_PrintForm_Click

 

DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70

DoCmd.PrintOut acSelection

 

Exit_PrintForm_Click:

Exit Sub

 

Err_PrintForm_Click:

MsgBox Err.Description

Resume Exit_PrintForm_Click

 

End Sub

 

Vielleicht kannst du schon etwas damit anfangen.

 

Gruß Esta

Link zu diesem Kommentar

Hallo Basti,

 

hier das ganze:

 

Option Compare Database

Option Explicit

Dim User As String

Dim ctl As Control

 

Private Sub Abschluss_DblClick(Cancel As Integer)

If Abschluss.Value = "Ja" Then

Abschluss.Value = "Nein"

ElseIf Abschluss.Value = "Nein" Then

Abschluss.Value = "Ja"

End If

End Sub

 

Private Sub Form_Activate()

Me.Repaint

Me.Refresh

End Sub

 

Private Sub Form_Close()

DoCmd.SetWarnings True

End Sub

 

Private Sub Form_Filter(Cancel As Integer, FilterType As Integer)

Me.Refresh

Me.Repaint

End Sub

 

Private Sub Form_Open(Cancel As Integer)

User = FindUser

SetRights User, Me

DoCmd.SetWarnings False

End Sub

 

Private Sub MAusr_DblClick(Cancel As Integer)

If MAusr.Value = "Ja" Then

MAusr.Value = "Nein"

ElseIf MAusr.Value = "Nein" Then

MAusr.Value = "Ja"

End If

End Sub

 

Private Sub PrintForm_Click()

On Error GoTo Err_PrintForm_Click

 

DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70

DoCmd.PrintOut acSelection

 

Exit_PrintForm_Click:

Exit Sub

 

Err_PrintForm_Click:

MsgBox Err.Description

Resume Exit_PrintForm_Click

 

End Sub

 

Private Sub CloseForm_Click()

On Error GoTo Err_CloseForm_Click

 

DoCmd.Close

 

Exit_CloseForm_Click:

Exit Sub

 

Err_CloseForm_Click:

MsgBox Err.Description

Resume Exit_CloseForm_Click

 

End Sub

 

Private Sub SendMessage_Click()

SendeMessage Me

End Sub

 

Private Sub ExcelStart_Click()

On Error Resume Next

 

Dim exlApp As Object

Dim intKan1 As Long

Dim intI As Integer, strThemen As String, strTabellenname As String

Dim strRückgabe As String

Dim StrValue As String

 

Set exlApp = CreateObject("Excel.Application")

exlApp.Visible = True

exlApp.Workbooks.Add Template:= _

"\\server\ordner\datei.xlt"

exlApp.UserControl = True

intKan1 = DDEInitiate("Excel", "System")

 

strThemen = DDERequest(intKan1, "Selection")

strTabellenname = Left(strThemen, InStr(1, strThemen, "!") - 1)

DDETerminate intKan1

intKan1 = DDEInitiate("Excel", strTabellenname)

 

DDEPoke intKan1, "Z2S5:Z2S6", Str(Me.BerichtNr)

DDEPoke intKan1, "Z3S5:Z3S6", Str(Me.ErstellDat)

.

.
(hier werden die Formularfelder gefüllt, habe ich abgekürzt)

.

DDEPoke intKan1, "Z47S9", Me.MAusr

DDEPoke intKan1, "Z47S12", Me.MAusrErfasser

 

DDETerminateAll

 

End Sub

 

Mit dem Kollegen habe ich jetzt gesprochen. Die DB ist nicht durch Gruppen- oder Userberechtigung geschützt. Er fragt lediglich beim Start einen User ab, um damit die Anzeige der Formulare und Formularfelder zu steuern. Diese Eingabe ist mit einem Default vorbelegt.

 

Gruß Esta

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...