Drucken über ein Schaltfläche (Formularsteuerelement)
#1
Sehr geehrte User,

kann mir jemand bei einer VBA Programmierung zu einem Druckauftrag helfen?
Über die Schaltfläche Formularsteuerelement (Druckauftrag) auf dem Tabellenblatt Übersicht 1
soll folgender Druckauftrag über VBA Programmierung in dieser Reihenfolge erfolgen.
Leider weiß ich nicht, wie man es realisieren kann, das die Tabellenblätter Tabelle 1-6 nur gedruckt werden.
Wenn in der Zelle A3 des jeweiligen Tabellenblattes eine Zahl größer als 0 Steht.

- Von dem Tabellenblatt Tabelle 6 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 5 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 4 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 3 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 2 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 1 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Übersicht 1 soll 1 Stück gedruckt werden

- Von dem Tabellenblatt Tabelle 6 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 5 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 4 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 3 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 2 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 1 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Übersicht 1 soll 1 Stück gedruckt werden

- Von dem Tabellenblatt Übersicht 2 soll 1 Stück gedruckt werden

Ich bedanke mich im Vorfeld für Eure Hilfe



.xlsx   Drucken über ein Makro.xlsx (Größe: 23,81 KB / Downloads: 3)
Antworten Top
#2
Hi,

als Ansatz:

Schleife über alle Tabellenblätter
Kontrolle ob in A3 eine Zahl >0 steht
Drucken

Sollen beide Abschnitte ausgeführt werden?
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#3
Hy Edgar, danke für deine schnelle Antwort. 
Leider bin ich erst Anfänger in VNA Programmierung 
und weiß nicht was du meinst. Könntest du mir ein Beispiel geben?
MfG Marco
Antworten Top
#4
Hi,


Zitat:Von dem Tabellenblatt Tabelle 6 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 5 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 4 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 3 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 2 soll 1 Stück gedruckt werden,
  wenn in der Zelle A3 von diesem Tabellenblatt eine Zahl größer 0 steht
- Von dem Tabellenblatt Tabelle 1 soll 1 Stück gedruckt werden,


...umständlicher geht es kaum noch... 
Das Ganze wäre wesentlich übersichtlicher, wenn Du geschrieben hättest:

Wenn in Zelle A3 der Tabellenblätter Tabelle1 bis Tabelle6 (fortlaufende Nummerierung),  jeweils eine Zahl > 0 steht...

Und dementsprechend müsste auch die zu programmierende Bedingung formuliert werden...

PHP-Code:
dim x as byte
for 1 to 6
    
with Worksheets
("Tabellenblatt " x)
    if isnumeric( .Cells(3,1).valuethen if cint(.Cells(3,1).value) > 0 then .PrintOut Copies:=1Collate:=True, IgnorePrintAreas:=False 
end with
next x 


Den Rest schau ich mir nicht an...
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste