Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro drucken vereinfachen

Forumthread: Makro drucken vereinfachen

Makro drucken vereinfachen
18.12.2006 21:48:32
Gisela
Hallo zusammen,
ich muß Ausdrucke entsprechend den Einträgen einer Spalte vornehmen.
Mit meinen bescheidenen Kenntnissen sieht das so aus und funktioniert auch.
Wer kann mir sagen, wie ich das vereinfachen kann. Es geht um ca. 50 Ausdrucke. Die Namen stehen in Spalte IV und müssen auf der ausgedruckten Seite in E1 stehen.
Hier ein Auszug aus meinem jetzigen Makro:

Sub drucken()
[IV26].Copy
[E1].PasteSpecial (xlPasteValues)
If ActiveCell <> "" Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1
[IV27].Copy
[E1].PasteSpecial (xlPasteValues)
If ActiveCell <> "" Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1
[IV28].Copy
[E1].PasteSpecial (xlPasteValues)
If ActiveCell <> "" Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1
[IV29].Copy
[E1].PasteSpecial (xlPasteValues)
If ActiveCell <> "" Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1
[IV30].Copy
[E1].PasteSpecial (xlPasteValues)
If ActiveCell <> "" Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Else
End If
End If
End If
End If
End If
End Sub

Wie oben schon beschrieben, hab ich das jetzt 50x im Makro stehen.
Geht das auch kürzer? Wenn ja, wie?
Vielen Dank für jede Hilfe
Liebe Grüße
Gisela
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro drucken vereinfachen
18.12.2006 21:54:18
chris
Hallo Gisela,
hilft dir das weiter ?

Sub drucken()
For x = 26 To 100
Cells(x, 256).Copy
[E1].PasteSpecial (xlPasteValues)
If ActiveCell <> "" Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1
End If
Next
End Sub

Makro einfügen in ein ganz normales Codemodul.
gruß Chris
Anzeige
Vielen Dank und liebe Grüße, o.T.
18.12.2006 22:06:11
Gisela
o
AW: Makro drucken vereinfachen
18.12.2006 21:59:59
Georg
Hallo Gisela, versuch es mal damit

Sub drucken()
Dim x, max As Integer
max = 50 'Maximale Anzahl der Druckseiten
For x = 1 To max '1 ist die erste Zeile (falls 26 die erste ist dann hier mit 26 beginnen und max + 26!)
Range("D" & x).Copy
Range("E1").PasteSpecial (xlPasteValues)
If Range("D" & x).Value <> "" Then ActiveWindow.SelectedSheets.PrintOut Copies:=1
Next
End Sub

lg, Georg
Anzeige
Vielen Dank und liebe Grüße, o.T.
18.12.2006 22:06:44
Gisela
o
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige