ich hoffe das Sie mir weiterhelfen können.
Ich arbeite innerhalb unserer Behörde mit einer Personenbezogenen Datenbank welche in Excel eine Personenerfassung durchführt und dann später mittels vieler Makros automatisch diese Daten in verschiedene Word Dateien einpflegt und diese ausdruckt.
Das vereinfacht mir seit Monaten sehr die Arbeit. Leider hat irgend ein innerbehördliches Update dazu geführt das Makros fehlerhaft sind bzw. fehlten. Da mein Vorgänger diese Makros geschrieben hat, bin ich jetzt komplett überfordert.
Sollte ich die Makros nicht mehr zum laufen kriegen, wird eine Nebentätigkeit welche nur 5 Minuten gedauert hat jetzt zu einer sehr sehr langwierigen Geschichte.
Ich habe leider keine Ahnung von der Materie, also bitte sehen Sie es mir nach wenn ich mich da sehr laienhaft anstelle.
Ich werde aufgrund von Datenschutz, Namen von Formularen bzw Netzwerkadressen mit XXXX abändern.
Erklärung:
Ich versuche folgendes Makro abzuspielen.
Sub Druck_Aller_Unterlagen()
Sheets("Deckblatt").Select
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Sheets("Unterlagen").Select
ActiveWindow.SmallScroll Down:=-18
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Sheets("SÜ").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
ActiveWorkbook.Save
Sheets("Datenblatt").Select
Range("D3:H3").Select
CreateObject("Word.application").Documents.Open("I:XXXXXXXX\TE 122_ZE FD 2.1\FD 2.1 - Ausweise\ _
Sonder-und Waffenausweise\Formulare\TEST\5_UZwGBw_TEST.docx").Application.Visible = True
Set wordbasic = GetObject("I:\xxxxxxxxxxTE 122_ZE FD 2.1\FD 2.1 - Ausweise\ _
Sonder-und Waffenausweise\Formulare\TEST\5_UZwGBw_TEST.docx")
Set wb = wordbasic.Parent
wb.Run "UZwGBwDruck"
Set wordbasic = Nothing
Set wb = Nothing
CreateObject("Word.application").Documents.Open("I:\XXXXXXXX\TE 122_ZE FD 2.1\FD 2.1 - Ausweise\ _
_
_Sonder-und Waffenausweise\Formulare\TEST\3_Herr_Niederschrift_foermliche_Verpflichtung_TEST. _
_
docx").Application.Visible = True
Set wordbasic = GetObject("I:\XXXXXXXXTE 122_ZE FD 2.1\FD 2.1 - Ausweise\Sonder-und _
Waffenausweise\Formulare\TEST\3_Herr_Niederschrift_foermliche_Verpflichtung_TEST.docx")
Set wb = wordbasic.Parent
wb.Run "Anlage3DruckHerr"
Set wordbasic = Nothing
Set wb = Nothing
CreateObject("Word.application").Documents.Open("I:\IUD\BwDLZKiel\InnereDienste\TE 122_ZE FD 2. _
_
_
_
_
_
_
_
_
1\FD 2.1 - Ausweise\Sonder-und Waffenausweise\Formulare\TEST\4_Erklärung über die allgemeine _
Sicherheitsbelehrung_TEST.docx").Application.Visible = True
Set wordbasic = GetObject("I:\XXXXXXXXX\TE 122_ZE FD 2.1\FD 2.1 - Ausweise\Sonder-und _
Waffenausweise\Formulare\TEST\4_Erklärung über die allgemeine Sicherheitsbelehrung_TEST.docx")
Set wb = wordbasic.Parent
wb.Run "Anlage4DruckNeu"
Set wordbasic = Nothing
Set wb = Nothing
CreateObject("Word.application").Documents.Open("I:\IUD\XXXXXXXX\TE 122_ZE FD 2.1\FD 2.1 - _
Ausweise\Sonder-und Waffenausweise\Formulare\TEST\1_Empfangsbestätigung für einen _
Dienstausweis_TEST.docx").Application.Visible = True
Set wordbasic = GetObject("I:\IUD\XXXXXXXXXx\TE 122_ZE FD 2.1\FD 2.1 - Ausweise\Sonder-und _
Waffenausweise\Formulare\TEST\1_Empfangsbestätigung für einen Dienstausweis_TEST.docx")
Set wb = wordbasic.Parent
wb.Run "EmpfangAusweisDruck"
CreateObject("Word.application").Documents.Open("I:\IUD\XXXXXXXXX\TE 122_ZE FD 2.1\FD 2.1 - _
Ausweise\Sonder-und Waffenausweise\Formulare\TEST\2_Anlage_A_8.docx").Application.Visible = _
True
Set wordbasic = GetObject("I:\IUD\XXXXXXXXTE 122_ZE FD 2.1\FD 2.1 - Ausweise\Sonder-und _
Waffenausweise\Formulare\TEST\2_Anlage_A_8.docx")
Set wb = wordbasic.Parent
wb.Run "Anlage8A"
Set wordbasic = Nothing
Set wb = Nothing
Range("K37").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("K39").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("K41").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("K43").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("K45").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("K47").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("K49").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("K51").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("J55").Select
ActiveCell.FormulaR1C1 = "FALSE"
Range("D3:H3").Select
Selection.ClearContents
Set wordbasic = Nothing
Set wb = Nothing
End Sub
Ich erhalte folgende Meldung Laufzeitfehler: -2147352573 (80020003)
Der Fehler im Quellcode wurde von mir schwarz darsgestellt.
Nach meiner Interpretation sagt er mir das der Quellpfad des Makro UZwGBwDruck falsch sei.
Dieser Fehler tritt bei mehreren Druck Makros auf.
Hier die Quelltexte der Makros:
Sub UZwGBwDruck()
' UZwGBwDruck Makro
ActivePrinter = "\\P01KIESM02.itbw.itb.local\P01031353P"
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentWithMarkup, Copies:=2, Pages:="", PageType:= _
wdPrintAllPages, Collate:=True, Background:=True, PrintToFile:=False, _
PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
PrintZoomPaperHeight:=0
ActiveDocument.Close
Application.Quit
End Sub
Sub Anlage3DruckHerr()
'
' Anlage3DruckHerr Makro
'
'
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentWithMarkup, Copies:=2, Pages:="", PageType:= _
wdPrintAllPages, Collate:=True, Background:=True, PrintToFile:=False, _
PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
PrintZoomPaperHeight:=0
ActiveDocument.Close
Application.Quit
End Sub
Sub Anlage4DruckNeu()
'
' Anlage4DruckNeu Makro
'
ActivePrinter = "\\P01KIESM02.itbw.itb.local\P01031353P"
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentWithMarkup, Copies:=2, Pages:="", PageType:= _
wdPrintAllPages, Collate:=True, Background:=True, PrintToFile:=False, _
PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
PrintZoomPaperHeight:=0
ActiveDocument.Close
Application.Quit
End Sub
Sub EmpfangAusweisDruck()
'
' EmpfangAusweisDruck Makro
'
'
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentWithMarkup, Copies:=2, Pages:="", PageType:= _
wdPrintAllPages, Collate:=True, Background:=True, PrintToFile:=False, _
PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
PrintZoomPaperHeight:=0
ActiveDocument.Close
Application.Quit
End Sub
Sub Anlage8A()
'
' Anlage8A Makro
'
'
Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentWithMarkup, Copies:=2, Pages:="", PageType:= _
wdPrintAllPages, Collate:=True, Background:=True, PrintToFile:=False, _
PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
PrintZoomPaperHeight:=0
ActiveDocument.Close
Application.Quit
End Sub
Sub DruckAusgeblendetEinAus()
On Error Resume Next
If Options.PrintHiddenText = False Then
If MsgBox("Verfügung nutzen?", vbYesNo) = vbYes Then
Options.PrintHiddenText = True
End If
Else
If MsgBox("Anschreiben nutzen?", vbYesNo) = vbYes Then
Options.PrintHiddenText = False
End If
End If
End Sub
Da mir zunächst der Drucker als Fehlerquelle gemeldet wurde, habe ich diesen aktualisiert.
Der Neue Quellcode des Makro lautet somit.
Sub UZwGBwDruck()
' UZwGBwDruck Makro
ActivePrinter = "\\P01KIESM02.itbw.itb.local\P01031353P auf Ne07:"
Application.PrintOut Filename:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentWithMarkup, Copies:=2, Pages:="", PageType:= _
wdPrintAllPages, Collate:=True, Background:=True, PrintToFile:=False, _
PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
PrintZoomPaperHeight:=0
ActiveDocument.Close
Application.Quit
End Sub
Ich erhalte nun Laufzeitfehler 438
Objekt unterstützt diese Eigenschaft oder Methode nicht.
Im Debugger erhalte ich nun den gelben Pfeil bei der oben gestellten Position
Wenn ich jetzt versuche einfach diese Position zu entfernen erhalte ich einen "Parameterfehler, Fehler beim Kompilieren".
Ich bin nun wirklich Ratlos was ich machen kann.
Wenn Sie mir dabei helfen können, wäre ich Ihnen sehr verbunden.
Danke im voraus.
Gruß
Julian M