Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.04.2024 20:05:21
28.04.2024 18:33:31
28.04.2024 18:25:12
28.04.2024 14:18:05
Anzeige
Archiv - Navigation
1844to1848
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

Mit VBA bestimmte Seiten drucken

Mit VBA bestimmte Seiten drucken
08.09.2021 15:16:14
Andreas
Hi zusammen,
habe eine VBA, mit der ich aus 5 verschiedenen Tabellenblättern drucken möchte.
Die Vorgabe darüber welches der Tabellenblätter gedruckt werden soll steht in meinem Tabellenblatt "DQ" in Zelle "i8".
Hier wird mit einer Formel ein Wert von 1-5 ermittelt. Wenn also eine 4 errechnet wird, möchte ich eben auch nur Tabelle 1-4 drucken.
Kann mir bitte jemand sagen, was ich umstellen muss, damit das funktioniert?
Aktuell kommen leider immer alle 5 Blätter : (
Vielen Dank vorab
Gruß Andreas
Sub DruckTabellen()
Dim strDruckerAktiv$, i%, max%, vz%, bz%, sStdDrucker$
sStdDrucker = Application.ActivePrinter
'Application.ActivePrinter = "\\SRVADS01.Briefpapier auf Ne08:"
strDruckerAktiv = Application.ActivePrinter
max = Sheets("DQ").Range("I8").Value
If max If max > 5 Then max = 5
For i = 1 To max
vz = i * 52 - 51: bz = i * 37
Worksheets("Tabelle1").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Worksheets("Tabelle2").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Worksheets("Tabelle3").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Worksheets("Tabelle4").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Worksheets("Tabelle5").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Next i
Application.ActivePrinter = sStdDrucker
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mit VBA bestimmte Seiten drucken
08.09.2021 15:31:01
Rudi

For i = 1 To max
vz = i * 52 - 51: bz = i * 37
Worksheets("Tabelle" & i).Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Next i
soll wirklich immer tiefer gerutscht werden?
Gruß
Rudi
AW: Mit VBA bestimmte Seiten drucken
08.09.2021 15:39:21
Andreas
Hi Rudi,
nein die Blätter sehen 1:1 gleich aus von der Formatierung her.
Leider kenne ich mich mit VBA nur sehr wenig aus, und das ist die einzige VBA, die ich habe um Bereiche zu drucken =D
Dass das dafür sorgt tiefer zu rutschen wusste ich garnicht : /
Gedruckt werden soll eigentlich immer der Bereich von F1-S36, oder der Bereich "Auftrag1", "Auftrag2"... so habe ich die Bereiche mit dem Namensmanager benannt.
Falls du mir helfen kannst wäre das super : )
Gruß Andreas
Anzeige
AW: Mit VBA bestimmte Seiten drucken
08.09.2021 16:07:44
Rudi
dann vermutlich

For i = 1 To max
Worksheets("Tabelle" & i).Range("F1:S36").PrintPreview '.PrintOut Copies:=1
Next i
Gruß
Rudi
AW: Mit VBA bestimmte Seiten drucken
08.09.2021 16:16:42
Andreas
Hi Rudi,
Danke für deine Rückmeldung.
Aber wohin muss deine Zeile?
Habe den Fett gedruckten Teil gelöscht und deine Zeile dort eingefügt.
Hat aber leider nicht funktioniert.
Außerdem kann ich in deinem Code keinen Bezug zu der Zelle I8 aus dem Tabellenblatt "DQ" sehen, der ja vorgeben soll, welches der 5 Tabellenblätter auch gedruckt werden soll.
Wäre super wenn du mir weiterhelfen kannst.
Sub DruckTabellen()
Dim strDruckerAktiv$, i%, max%, vz%, bz%, sStdDrucker$
sStdDrucker = Application.ActivePrinter
'Application.ActivePrinter = "\\SRVADS01.Briefpapier auf Ne08:"
strDruckerAktiv = Application.ActivePrinter
max = Sheets("DQ").Range("I8").Value
If max If max > 5 Then max = 5
For i = 1 To max
vz = i * 52 - 51: bz = i * 37

Worksheets("Tabelle1").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Worksheets("Tabelle2").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Worksheets("Tabelle3").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Worksheets("Tabelle4").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Worksheets("Tabelle5").Range("F" & vz & ":S" & bz).PrintPreview '.PrintOut Copies:=1
Next i
Application.ActivePrinter = sStdDrucker
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub

Anzeige
AW: Mit VBA bestimmte Seiten drucken
08.09.2021 23:35:21
Peter
Hallo Andreas,
ich habe mal eine Musterdatei zum Ausdrucken nach Deinen Vorstellungen erstellt. Die Anzahl der Arbeitsblätter wird im Arbeitsblatt DQ angegeben und per Makro1 wird der Druck ausgeführt.
https://www.herber.de/bbs/user/147971.xlsm
Bitte mal ausprobieren. Rückmeldung wäre schön.
Mit freundlichem Gruß
Peter Kloßek
AW: Mit VBA bestimmte Seiten drucken gelöst
09.09.2021 08:52:55
Andreas
Guten Morgen Peter,
das ist perfekt :D
Funktioniert 1a, wie gewollt.
Vielen lieben Dank für deine Mühe Peter!
Wünsche dir einen schönen Tag
Gruß Andreas

21 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige