Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1628to1632
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

drei ArrDruck hintereinander ausführen

drei ArrDruck hintereinander ausführen
15.06.2018 07:11:19
Stefan
Guten Morgen,
ich komme nicht weiter.
Was bisher klappt:
über einen Button wird eine ArrDruck gestartet (definierte Reihenfolge), ein geschlossenes Sheet geöffnet, gedruckt, geschlossen und dann ein Hyperlink geöffnet.
Zur Vereinfachung (bei entnahme der Ausdrucke) für den user möchte ich jetzt den ArrDruck auf drei Stück verteilen und genau da komme ich nicht weiter.
Die Abarbeitung des ersten ArrDruck klappt, das geschlossene Sheet wird abgearbeitete aber dann _ "springt" das Programm nicht in das nächste ArrDruck über und Stoppt?

Private Sub CommandButton1_Click()
Dim ArrDruck() As String
Dim i As Integer
''TIEFZIEHEN (zu Druckende Dokumente Auswählen)
ArrDruck = Split("AA TZ,Tiefziehen,Nachkalkulation TZ,Verpackungsvorschrift,interner  _
Lieferschein", ",")
For i = 0 To UBound(ArrDruck)
ThisWorkbook.Sheets(ArrDruck(i)).PrintOut
Next i
Workbooks.Open "P:\Qualitätsmanagement\1. QM-Handbuch\7 Produktion\Materialzettel.xlsx"
''Materialzettel auswählen
Sheets("ABS gemischt").PrintOut
Workbooks("Materialzettel.xlsx").Close
''FRÄSEN (zu Druckende Dokumente Auswählen)
ArrDruck = Split("AA FR,Fräsen,Nachkalkulation FR,Verpackungsvorschrift,interner Lieferschein",  _
_
_
_
_
",")
For i = 0 To UBound(ArrDruck)
ThisWorkbook.Sheets(ArrDruck(i)).PrintOut
Next i
Workbooks.Open "P:\Qualitätsmanagement\1. QM-Handbuch\7 Produktion\Materialzettel.xlsx"
''Materialzettel auswählen
Sheets("ABS gemischt").PrintOut
Workbooks("Materialzettel.xlsx").Close
''MONTAGE (zu Druckende Dokumente Auswählen)
ArrDruck = Split("AA MO,Montage,Nachkalkulation MO,Verpackungsvorschrift,interner Lieferschein", _
_
_
_
_
",")
For i = 0 To UBound(ArrDruck)
ThisWorkbook.Sheets(ArrDruck(i)).PrintOut
Next i
Workbooks.Open "P:\Qualitätsmanagement\1. QM-Handbuch\7 Produktion\Materialzettel.xlsx"
''Materialzettel auswählen
Sheets("ABS gemischt").PrintOut
Workbooks("Materialzettel.xlsx").Close
''an dieser Stelle den entsprechenden Zeichnungspfad einfügen
ThisWorkbook.FollowHyperlink "P:\Projektordner\B\yyyyyy\Artikel\xxxxxx\Zeichnungen"
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: drei ArrDruck hintereinander ausführen
17.06.2018 17:40:08
fcs
Hallo Stefan,
ich hab dein Makro mal unter Windows 10, Office 365, Excel 2016 getestet.
Es funktioniert.
Ich hab aber unter Windows 10 und Office 365 auch schon die Erfahrung gemacht, dass das ActiveWorkbook nicht immer korrekt erkannt wird, was dann den Fehler bei dir erklären würde.
Ich schlage folgende Anpassung vor, wobei "Materialzettel1.xlsx" nur einmal geöffnet werden muss.
Gruß
Franz
Sub CommandButton1_Click()
Dim ArrDruck() As String
Dim strText As String
Dim strMatZettel As String, wkbMatZettel As Workbook
Dim i As Integer
''TIEFZIEHEN (zu Druckende Dokumente Auswählen)
strText = "AA TZ,Tiefziehen,Nachkalkulation TZ,Verpackungsvorschrift," _
& "interner Lieferschein"
ArrDruck = Split(strText, ",")
For i = 0 To UBound(ArrDruck)
ThisWorkbook.Sheets(ArrDruck(i)).PrintOut
Next i
strMatZettel = "P:\Qualitätsmanagement\1. QM-Handbuch\7 Produktion\" _
& "Materialzettel.xlsx"
Set wkbMatZettel = Workbooks.Open(strMatZettel, ReadOnly:=True)
''Materialzettel auswählen
wkbMatZettel.Sheets("ABS gemischt").PrintOut
''FRÄSEN (zu Druckende Dokumente Auswählen)
strText = "AA FR,Fräsen,Nachkalkulation FR,Verpackungsvorschrift," _
& "interner Lieferschein"
ArrDruck = Split(strText, ",")
For i = 0 To UBound(ArrDruck)
ThisWorkbook.Sheets(ArrDruck(i)).PrintOut
Next i
''Materialzettel auswählen
wkbMatZettel.Sheets("ABS gemischt").PrintOut
''MONTAGE (zu Druckende Dokumente Auswählen)
strText = "AA MO,Montage,Nachkalkulation MO,Verpackungsvorschrift," _
& "interner Lieferschein"
ArrDruck = Split(strText, ",")
For i = 0 To UBound(ArrDruck)
ThisWorkbook.Sheets(ArrDruck(i)).PrintOut
Next i
''Materialzettel auswählen
wkbMatZettel.Sheets("ABS gemischt").PrintOut
wkbMatZettel.Close savechanges:=False
''an dieser Stelle den entsprechenden Zeichnungspfad einfügen
strText = "P:\Projektordner\B\yyyyyy\Artikel\xxxxxx\Zeichnungen"
ThisWorkbook.FollowHyperlink strText
End Sub

Anzeige
AW: drei ArrDruck hintereinander ausführen
18.06.2018 09:23:51
Stefan
Hallo fcs,
es klappt...
Danke für deine Erklärung und auch für den alternativen Lösungsansatz, hab schon gezweifelt...
danke & gruß
Stefan

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige