ehe ich mich jetzt in einem dieser Office-Foren anmelde, dachte ich mir, ich versuch es erstmal hier, wo ich zuhause bin ...
Ich habe derzeit ein Makro, das mit einer Vielzahl von Einträgen nacheinander die Zeilen aus dem Tabellenblatt "Verteilerplan" durchgeht und daraus 3 bestimmte Werte (Spalten A, B und D) in 3 immer gleiche Felder desTabellenblattes "Druckbeleg" schreibt und dieses dann druckt. Für lediglich drei Zeilen des Verteilerplanes habe ich schon so viel Code, da ich im wesentlichen nur Copy-and-paste mache:
Sub Drucken()
Sheets("Verteilerplan").Select
Range("A3").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("C3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Verteilerplan").Select
Range("B3").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("D3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Verteilerplan").Select
Range("D3").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("D13").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("Verteilerplan").Select
Range("A4").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("C3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Verteilerplan").Select
Range("B4").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("D3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Verteilerplan").Select
Range("D4").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("D13").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("Verteilerplan").Select
Range("A5").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("C3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Verteilerplan").Select
Range("B5").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("D3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Verteilerplan").Select
Range("D5").Select
Selection.Copy
Sheets("Druckbeleg").Select
Range("D13").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
End Sub
Alles anzeigen
Wie kann ich das mit einer Schleife einfacher machen? Idealerweise soll auch nur dann gedruckt werden, wenn der Wert in Spalte D des Verteilerplanes ungleich 0 ist. Die Schleife soll solange durchlaufen, bis Spalte A des Verteilerplanes leer ist.