Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: letzte Zeile im Druckbereich ermitteln

letzte Zeile im Druckbereich ermitteln
30.08.2007 10:00:00
Melanie
Hallo liebe Herbianer,
ich hab da mal wieder ein Problem und bin ziemlich guter Dinge, dass ihr mir weiterhelfen könnt.
Und zwar möchte ich die letzte Zeilennummer einer Druckseite ermitteln. Diese Information benötige ich für ein anderes Makro in dem ich eine Schleife verwende und diese Schleife soll eben nur bis zu letzten Druckzeile laufen. Unter dem Druckbereich in Excel befinden sich noch viele Zusatzinformationen, mir nützt es also nicht, wenn ich die letzte belegte Zeile eines Arbeitslattes ermittle.
Vielen Dank für Eure Hilfe
Melly

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: letzte Zeile im Druckbereich ermitteln
30.08.2007 10:03:00
Hajo_Zi
Hallo Melly,
man sollte im Beitrag immer bei dem gleichen Problem bleiben.
Was möchtest Du nun die letzte Zeile des Druckbereichs oder der Druckseite?

AW: letzte Zeile im Druckbereich ermitteln
30.08.2007 10:07:59
Melanie
Hallo Haja,
Danke für den Hinweis. Da ein Tabellenblatt ja aus mehreren Druckseiten bestehen kann, möchte ich die letzte Zeile, der letzten Druckseite pro Tabellenblatt ermitteln
Viele Grüße
Melly

Anzeige
AW: letzte Zeile im Druckbereich ermitteln
30.08.2007 10:11:07
Hajo_Zi
Hallo Melly,

Option Explicit
Sub Test()
Dim I As Integer
Dim Zeile
On Error GoTo ErrH:
With Worksheets("Tabelle3")
For I = 1 To 3000
If .HPageBreaks.Count Then
Zeile = .HPageBreaks(I).Location.Row - 1
Else
.Cells(Rows.Count, 1) = 3
Zeile = .HPageBreaks(I).Location.Row - 1
.Cells(Rows.Count, 1).ClearContents
End If
Sheets("Tabelle2").Cells(I, 1) = "Umbruch " & I & "="
Sheets("Tabelle2").Cells(I, 2) = Zeile
Next I
End With
ErrH:
MsgBox ("Anzahl der Seiten: " & I - 1)
End Sub


Gruß Hajo

Anzeige
AW: letzte Zeile im Druckbereich ermitteln
30.08.2007 10:12:59
Melanie
Danke für die Mühe, Hajo
Gruß
Melly

Ich glaub mich knutsch ein Elch...
30.08.2007 10:14:00
Renee
Hi zusammen,
Dieser Dialog und v.a. der Einwand von Hajo verwirrt mich.
IMHO:
a) wenn ein Druckbereich festgelegt ist, wird der Rest vom Drucken ausgeschlossen und dann ist es die letzte Zeile des Druckbereichs.
b) wenn kein Druckbereich festgelegt ist muss es die letzte Zeile des Tabelleblatts sein, da ja in diesem Fall nix vom Drucken ausgeschlossen wird (ausser ggf. Shape-Objekte).
oder versteh ich was komplett falsch ?
Greetz Renee

Anzeige
AW: Zeile
30.08.2007 10:18:25
Hajo_Zi
Hallo Rennee,
darum mein Beitrag da es mich auch verwirrt hat.
"Und zwar möchte ich die letzte Zeilennummer einer Druckseite ermitteln."
hier wird von einer Seite gesprochen, nicht erste, letzte oder mittendrin nur eine Seite.
"Unter dem Druckbereich in Excel befinden sich noch viele Zusatzinformationen, ..."
und hier mit einmal von einem Druckbereich.
Aber es ist jetzt ja wohl geklärt.
Gruß Hajo

Anzeige
AW: letzte Zeile im Druckbereich ermitteln
30.08.2007 10:06:29
Renee
Hi Melly,
Probier mal:

MsgBox "Letzte Zeile: " & _
Mid(ActiveSheet.PageSetup.PrintArea, InStrRev(ActiveSheet.PageSetup.PrintArea, "$") + 1)


GreetZ Renee

AW: letzte Zeile im Druckbereich ermitteln
30.08.2007 10:12:01
Melanie
Super,
Vielen lieben Dank Renee,
ich glaub du hast mir auch schon ein anderes mal weitergeholfen.
Sehr kompetent! Mach weiter so!
Danke
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Letzte Zeile im Druckbereich ermitteln


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und das entsprechende Arbeitsblatt, in dem Du die letzte Zeile im Druckbereich ermitteln möchtest.

  2. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf „VBAProject (DeinWorkbookName)“, wähle „Einfügen“ und dann „Modul“.

  4. Füge den folgenden Code ein:

    Option Explicit
    Sub LetzteZeileImDruckbereich()
        Dim Druckbereich As String
        Dim LetzteZeile As Long
    
        Druckbereich = ActiveSheet.PageSetup.PrintArea
        LetzteZeile = Val(Mid(Druckbereich, InStrRev(Druckbereich, "$") + 1))
    
        MsgBox "Die letzte Zeile im Druckbereich ist: " & LetzteZeile
    End Sub
  5. Führe das Makro aus: Drücke F5, um das Makro auszuführen. Es zeigt Dir die letzte Zeile im Druckbereich an.


Häufige Fehler und Lösungen

  • Fehler: „Kein Druckbereich festgelegt“

    • Lösung: Stelle sicher, dass Du einen Druckbereich in den Seiteneinstellungen definiert hast. Gehe zu „Seitenlayout“ > „Druckbereich festlegen“.
  • Fehler: Makro funktioniert nicht

    • Lösung: Überprüfe, ob die Makros in Deiner Excel-Umgebung aktiviert sind. Gehe zu „Datei“ > „Optionen“ > „Trust Center“ > „Einstellungen für das Trust Center“ > „Makroeinstellungen“.

Alternative Methoden

Eine alternative Methode, um die letzte Zeile im Druckbereich zu ermitteln, ist die Verwendung von Excel-Funktionen anstelle von VBA. Du kannst die Funktion =MAX(WENN(A1:A1000<>"",ZEILE(A1:A1000))) verwenden, um die letzte belegte Zeile im Datenbereich zu finden. Diese Methode berücksichtigt jedoch nicht den Druckbereich.


Praktische Beispiele

  • Beispiel 1: Wenn Dein Druckbereich A1:D50 ist, wird das Makro die Zahl 50 zurückgeben.
  • Beispiel 2: Bei einem Druckbereich von B2:B30 gibt das Makro 30 zurück.

Tipps für Profis

  • Verwende benannte Bereiche: Wenn Du häufig mit Druckbereichen arbeitest, könnte es hilfreich sein, benannte Bereiche zu verwenden, um Deine Arbeit zu erleichtern.
  • Automatisiere die Druckbereichszuweisung: Erstelle ein Makro, das automatisch den Druckbereich basierend auf den vorhandenen Daten festlegt, um Zeit zu sparen.

FAQ: Häufige Fragen

1. Wie kann ich den Druckbereich in Excel festlegen?
Du kannst den Druckbereich festlegen, indem Du den gewünschten Bereich in Deinem Arbeitsblatt auswählst, dann zu „Seitenlayout“ gehst und auf „Druckbereich festlegen“ klickst.

2. Kann ich mehrere Druckbereiche in einem Arbeitsblatt festlegen?
Nein, in einem Arbeitsblatt kann nur ein zusammenhängender Druckbereich festgelegt werden. Du kannst jedoch verschiedene Druckbereiche in unterschiedlichen Arbeitsblättern eines Arbeitsbuchs haben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige