Anzeige
Archiv - Navigation
896to900
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
896to900
896to900
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Nur Teil drucken

Nur Teil drucken
13.08.2007 09:24:53
Oli
Hallöchen,
ich habe mal wieder ein Problem (für euch hoffe ich nur ein "Problemchen"). Über eine Macro suche ich aus einer Auswahlmatrix das raus, was ich benötige. Über einen Autofilter werden dann alle Leerzeilen ausgeblendet und anschließend das Ergebnis auch wieder über ein Macro auf ein Ausgabesheet gebracht.
Jetzt ist das nur so, dass mal nur 5 Zeilen Ergebnis auskommen und mal 200. Wie kann ich den Druckbereich automatisch anpassen, damit wenn ich auf den "Print-Button" klick (auch über ein Macro) nur soviel gedruckt wie was drin steht?
Vielen Dank schon einmal.
Gruß
Oli

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

Betreff
Datum
Anwender
Anzeige
.PrintArea = UsedRange
13.08.2007 09:40:00
Matthias
Hallo Oli
Ich habe zwar keinen Drucker installiert, aber ich denke so könnte es gehen.

Private Sub Workbook_BeforePrint(Cancel As Boolean)
ActiveSheet.PageSetup.PrintArea = UsedRange
End Sub


Sheet anpassen !
Wie geschrieben ich konnte es nicht probieren, aber evtl. ist das ja ein Ansatz.
Userbild

AW: .PrintArea = UsedRange
13.08.2007 09:47:00
Wuxinese
Hallo zusammen,
ich hab erst auch gedacht, dass es so gehen muesste, ging aber nicht.
Habs dann so geloest (Stellt den Druckbereich von "A1" bishin zur letzten benutzten Zeile/Spalte ein:
Dim myprint As Range
Dim irow, icol As Integer
icol = Sheet2.UsedRange.Columns.SpecialCells(xlCellTypeLastCell).Column
irow = Sheet2.UsedRange.Rows.SpecialCells(xlCellTypeLastCell).row
Set myprint = Sheet2.Range(Sheet2.Cells(1, 1), Sheet2.Cells(irow, icol))
Sheet2.PageSetup.PrintArea = myprint.Address

Hat bei mir ganz gut funktioniert.
Gruss
Rainer

Anzeige
AW: .PrintArea = UsedRange
13.08.2007 09:52:00
Oli
Hallöchen,
also es funktioniert schon besser, aber leider noch nicht ganz. Es druckt immer noch zu viel. Kann man evtl. irgendwie was machen, wie:
"Schau ob in Spalte B was drin steht und drucke soviel, bis nichts mehr drin steht"
Danke schon einmal.
Gruß
Oli

AW: .PrintArea = UsedRange
13.08.2007 09:58:00
Wuxinese
Gilt die Antwort der Loesung vom Matthias oder von mir? Es gibt sicherlich die Moeglichkeit, den Druckbereich zu Teilen (z.B. "A1:A4" & "C3:D7"), allerdings wird dann jeder 'einzelne' der 'beiden' Druckbereiche auf einer extra Seite ausgedruckt.
Gruss
Rainer

AW: .PrintArea = UsedRange
13.08.2007 10:02:00
Oli
Hallöchen,
die Antwort gilt eigentlich euch beiden. Kann es daran liegen, dass die Zellen gedruckt werden, die weiß ausgefüllt sind?
Danke schon einmal wieder. Ich muss sagen, das Forum ist echt genial.
Danke

Anzeige
AW: .PrintArea = UsedRange
13.08.2007 10:16:30
Wuxinese
Ja, wenn die Zellen einen weissen Hintergrund haben, dann gelten die als benutzt und werden somit ausgedruckt. Da es eigentlich keinen Sinn hat, Zellen weiss zu formatieren, wuerde ich bei allen Zellen, die weiss sein sollen, die Hintergrundfarbe auf 0 aendern. Somit wuerde wohl auch das mit dem Druckbereich funktionieren. Hoffentlich :-)

AW: .PrintArea = UsedRange
13.08.2007 10:25:00
Oli
Ja, eigentlich macht es wenig Sinn,
es sieht einfach nur schöner aus wenn man mit arbeiten muss.
Aber ohne Farbe funktioniert es.
Vielen Dank mal wieder.
Gruß

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige