Excel - Nur Seiten mit Text drucken - VBA-Lösung?
Hallo Zusammen
Habe eine Liste mit Bezugsformel auf 100 Zeilen . Wie mach ich das, wenn die Zeile 54 leer ist (also nur die Formel), sollte die Seite 2 nicht gedruckt werden.
Gibt es für dies eine VBA Lösung? Schon jetzt vielen Dank für die Aufmerksamkeit und Hilfe
2 Antworten
Sub DruckBereich()
Dim i As Long
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 1).Formula = "" Then
ActiveSheet.PageSetup.PrintArea = "A1:A" & i
Exit For
End If
Next
End Sub
Stehe total auf dem Schlauch!
Guten Morgen @geri3d
Versuchte, den Drucker zu starten (gem. Anleitung) / funktionierte nicht. den Befehl wieder gelöscht. Aber ich bringe Dein Modul nicht mehr zum Laufen. (Habe Button mit korrekter Makroadresse)
Hast Du noch Geduld mit mir? Das eingesetzte Makro:
Sub Drucken()
'
' Drucken Makro
'
'
Dim i As Long
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 1).Formula = "" Then
ActiveSheet.PageSetup.PrintArea = "A1:F" & i
Exit For
End If
Next
End Sub
Wenn ich es auslöse - es passiert einfach gar nichts.
Das Blatt ist normalerweise geschützt, aber es funktioniert auch nicht, wenn ich den Schutz aufhebe.
Hast Du noch einen guten Rat? Riesen-Dank!
Hier noch der Print Befehl.
Dieser alleine erkennt allerdings nicht ob ein Drucker angeschlossen ist und Papier vorhanden.
Also, vorher immer Schön von Hand prüfen, ob dies der Fall ist.
Eine Excel Sheet kann mehrere Seiten haben. Mit: From:=1, To:=1,
würde nun Seite 1 gedruckt werden. Läßt man dies weg alle Seiten auf denen etwas steht, oder im Vorfeld der Druckbereich eingeschränkt wurde.
==
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate:=True
===
Außerdem muss du noch in der Schleife dafür sorgen auf das nächste Sheet zu wechseln. Nur das "sichtbare Sheet" (mit all seinen Seiten) wird ausgedruckt.
Vermutlich hab ich dies falsch angewendet. Es tut sich auf jeden Fall nichts!
Habe es wie von Dir geschrieben in "Tabelle8" eingetragen
Funktioniert nicht
wie auch versucht in einem Modul wie folgt einzusetzen
Was kann ich noch versuchen?