Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1848to1852
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

Arbeitsbläter nach Registerfarbe drucken

Arbeitsbläter nach Registerfarbe drucken
12.10.2021 19:44:04
Tom
Hallo ihr lieben Excel Profis,
ich habe mal wieder ein kleines Problem bei dem ich nicht weiter komme in der Hoffnung das ich hier Hilfe finde.
Ich möchte in einer Arbeitsmappe, in der mehrere Arbeitsblätter sind, die Arbeitsblätter nur drucken, wenn diese eine bestimmte Farbe haben.
Ich brauche einen Code der mit RGB Farben geschrieben ist da es mit Color nicht funktioniert, wegen z.B. Hellblau und etwas helleres Blau.
Zusätzlich soll aus einer bestimmten Tabelle die im Drucklayout aus mehreren Blättern besteht immer ein gewisses Blatt hinter einer Tabelle gedruckt werden die davor kommt.
Beispiel (Tabelle X mit 6 DIN A4 Blättern, wenn diese gedruckt wird)
Der Code müsste (denke ich) so aufgebaut sein:
BEISPIEL:
Arbeitsblätter drucken
Tabelle 5 drucken wenn Farbe (0,0,0) ist
Tabelle 7 drucken wenn Farbe (0,0,0) ist
wenn Tabelle 7 gedruckt wird dann von Tabelle X die Seite 3 und 4 drucken
Tabelle 10 drucken wenn Farbe (0,0,0) ist
usw.
'Wichtig ist das es so wie ich die Reihenfolge gemacht habe auch so gedruckt wird.
Ich hoffe es versteht jemand was ich meine und danke für jeden Hinweis!

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Arbeitsbläter nach Registerfarbe drucken
12.10.2021 22:49:28
Timm
Hallo Tom,
dass geht nur mit einem Makro. Die Programmierung müsste wie folgt aufgebaut werden:
1.Mit einer If- Schleife die Farben der Tabellen prüfen, bei Übereinstimmung dann die jeweiligen Tabellenblätter drucken
2. Um dein Vorhaben mit der Tabelle7 umzusetzen musst du eine verschachtelte If-Schleife nehmen
3. Die Druckreihenfolge legst du mit der Reihenfolge der Programmierung fest. 1. If-Schleife wird zuerst gedruckt usw.
Ich hoffe, dass ich dir einen Lösungsansatz für dein Vorhaben liefern konnte. Sobald das Grundgerüst des Makros steht poste es doch hier und ich helfe dir gerne bei den Feinheiten.
Gruß Timm
Anzeige
AW: Arbeitsbläter nach Registerfarbe drucken
13.10.2021 15:54:29
Tom
Hallo, erstmal danke für deine Hilfestellung. Ich habe es versucht aber komme nicht weiter. Ich habe
anscheinend Fehler im Code die ich nicht verstehe. Im Internet habe ich überall geschaut aber ich finde nichts passendes.
Ist es erstmal grundsätzlich so richtig?

Sub Drucken()
If Sheets("Tabelle1").Color = RGB(0, 255, 0) Then .PrintOut Copies:=1, Collate _
:=True, IgnorePrintAreas:=False
If Sheets("Tabelle2").Color = RGB(0, 255, 0) Then .PrintOut Copies:=1, Collate _
:=True, IgnorePrintAreas:=False
If Sheets("Tabelle2").PrintOut Then ("TabelleX").PrintOut From:=3, To:=4, Copies:=1, Collate _
:=True, IgnorePrintAreas:=False
If Sheets("Tabelle3").Color = RGB(0, 255, 0) Then .PrintOut Copies:=1, Collate _
:=True, IgnorePrintAreas:=False
End If
End Sub

Anzeige
AW: Arbeitsbläter nach Registerfarbe drucken
13.10.2021 22:27:55
Timm
Hallo Tom,
da war ein kleiner Fehler in der Syntax.
If ThisWorkbook.Worksheets("Tabelle1").Tab.color = RGB (0, 255, 0) Then
ThisWorkbook.Worksheets("Tabelle1").Printout copies:=1, Collate _
:=True, IgnorePrintAreas:=False
End if
Für Tabelle 7
If ThisWorkbook.Worksheets("Tabelle7").Tab.color = RGB (0, 255, 0) Then
ThisWorkbook.Worksheets("Tabelle7").Printout copies:=1, Collate _
:=True, IgnorePrintAreas:=False
ThisWorkbook.Worksheets("TabelleX").Printout From:=3, To:=4, copies:=1, Collate _
:=True, IgnorePrintAreas:=False
End if
Gruß Timm
AW: Arbeitsbläter nach Registerfarbe drucken
14.10.2021 14:31:15
Tom
Hallo Timm,
danke für deine Unterstützung. Es funktioniert einwandfrei! Jetzt habe ich nur noch ein kleines Problem bei dem ich nicht
weiter komme.

Sub Test_2()
If ThisWorkbook.Worksheets("Tabelle1").Tab.Color = RGB(0, 176, 80) Then
ThisWorkbook.Worksheets("Tabelle1").PrintOut copies:=1, Collate _
:=True, IgnorePrintAreas:=False
ThisWorkbook.Worksheets("Tabelle2").Tab.Color = RGB(255, 204, 153) Then
ThisWorkbook.Worksheets("Tabelle2").PrintOut copies:=1, Collate _
:=True, IgnorePrintAreas:=False
ThisWorkbook.Worksheets("TabelleX").PrintOut From:=2, To:=5, copies:=1, Collate _
:=True, IgnorePrintAreas:=False
End If
End Sub
Ich will quasi Tabelle 1 drucken, wenn Sie die richtige Farbe hat aber Tabelle 2 nur drucken, wenn diese die richtige Farbe hat wenn Tabelle1 gedruckt wird und immer TabelleX drucken, wenn Tabelle1 gedruckt wird.
Ich muss den Code für Tabelle 2 dazwischen setzen damit diese auch dazwischen gedruckt wird.
Das macht Excel aber so wie ich es geschrieben habe nicht.
Ich hoffe du verstehst was ich meine und danke das du dir die Zeit dafür nimmst mir zu helfen!
Anzeige
AW: Arbeitsbläter nach Registerfarbe drucken
14.10.2021 19:10:36
Tom
Hallo Timm,
danke für deine Unterstützung. Es funktioniert einwandfrei! Jetzt habe ich nur noch ein kleines Problem bei dem ich nicht
weiter komme.

Sub Test_2()
If ThisWorkbook.Worksheets("Tabelle1").Tab.Color = RGB(0, 176, 80) Then
ThisWorkbook.Worksheets("Tabelle1").PrintOut copies:=1, Collate _
:=True, IgnorePrintAreas:=False
ThisWorkbook.Worksheets("Tabelle2").Tab.Color = RGB(255, 204, 153) Then
ThisWorkbook.Worksheets("Tabelle2").PrintOut copies:=1, Collate _
:=True, IgnorePrintAreas:=False
ThisWorkbook.Worksheets("TabelleX").PrintOut From:=2, To:=5, copies:=1, Collate _
:=True, IgnorePrintAreas:=False
End If
End Sub
Ich will quasi Tabelle 1 drucken, wenn Sie die richtige Farbe hat aber Tabelle 2 nur drucken, wenn diese die richtige Farbe hat wenn Tabelle1 gedruckt wird und immer TabelleX drucken, wenn Tabelle1 gedruckt wird.
Ich muss den Code für Tabelle 2 dazwischen setzen damit diese auch dazwischen gedruckt wird.
Das macht Excel aber so wie ich es geschrieben habe nicht.
Ich hoffe du verstehst was ich meine und danke das du dir die Zeit dafür nimmst mir zu helfen!
Anzeige
AW: Arbeitsbläter nach Registerfarbe drucken
14.10.2021 19:26:15
Daniel
Hi
Vor der Zeile für Tabelle 2 ein IF davor schreiben und nach dem Then in der selben Zeile weitermachen.
Gruß Daniel
AW: Arbeitsbläter nach Registerfarbe drucken
16.10.2021 16:22:03
Tom
Moin,
jetzt klappt alles wie ich es vorhatte. besten Dank dafür!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige