Hallo VBA-Gemeinde,
ich bin seit einigen Wochen als Werkstudent neu in 'ner Firma und soll mich nun an der Behebung des folgenden Fehlers versuchen:
Es gibt für die Produktionsanlagen im Unternehmen Schmier- und Wartungspläne. Diese wurden von meinem Vorgänger erstellt und funktionieren seit einiger Zeit nicht mehr. Beim Versuch der Speicherung des ausgefüllten Excel-Formulars als PDF taucht die Fehlermeldung "Laufzeitfehler 5" auf.
Quellcode, der bis vor kurzer Zeit stets erfolgreich verwendet wurde:
Option Explicit
Private Sub CommandButton1_Click()
Dim AnzahlWB As Integer
Worksheets("Schmierprotokoll").Activate
If TextBox1.Value <> "" And TextBox2.Value <> "" Then
' PDF Export
Laut Debugger sind folgende Zeilen die Ursache für den Fehler:
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="\\xxx\xxx-Technik\03_Wartungspläne und Dokumente\Halle 2\Wartungspläne ausgefüllt\" & TextBox2.Value & "_Schmierprotokoll_" & TextBox1.Value & ".pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=False
' Einblenden der Menüleiste
Worksheets("Schmierprotokoll").Unprotect Password:="xxx"
SendKeys "^{F1}"
Application.DisplayFullScreen = False
Worksheets("Schmierprotokoll").Protect Password:="xxx"
' Apllikation schließen
AnzahlWB = Workbooks.Count
If AnzahlWB <> 1 Then
Workbooks("Schmierprotokoll.xlsm").Close Savechanges:=False
Else
Application.Quit
Application.DisplayAlerts = False
End If
' Hinweise bei unvollständigen Daten
If TextBox1.Value = "" And TextBox2.Value = "" Then
MsgBox ("Bitte Name und Datum eintragen!")
ElseIf TextBox1.Value = "" And TextBox2.Value <> "" Then
MsgBox ("Bitte Name eintragen!")
ElseIf TextBox1.Value <> "" And TextBox2.Value = "" Then
MsgBox ("Bitte Datum eintragen!")
End If
Application.DisplayAlerts = False
End If
End Sub
Private Sub CommandButton2_Click()
Worksheets("Schmierprotokoll").TextBox2.Value = Date
End Sub
Ich hoffe ihr könnt mir irgendwie helfen, bin nicht sehr versiert, was VBA angeht, Grundkenntnisse und ein paar Erfahrungen mit C++ habe ich allerdings.
PS: Einige Firmenbezogene Bezeichnungen habe ich mit "xxx" unkenntlich gemacht, falls ihr euch wundern solltet.
Im Voraus dankend und mit freundlichen Grüßen
Philipp
|