1.8k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,

ich verwende das folgende Makro zur Ermittlung der letzten Zeile auf der 1. Seite.

Sub LetzteZeileAufSeite1()
Dim lngZeile As Long
Dim HPB As HPageBreak

ActiveSheet.Cells(10000, 1).Value = "x"

lngZeile = ActiveSheet.Cells(1, 1).Parent.HPageBreaks(1).Location.Row - 1

ActiveSheet.Cells(10000, 1).Value = ""
MsgBox lngZeile, , "die letzte Zeile auf Seite 1:"
End Sub

Das Makro funktioniert mit Excel 2003 und 2007 in Verbindung mit XP und Vista. Mit Windows 7 erhalte ich bei

lngZeile = ActiveSheet.Cells(1, 1).Parent.HPageBreaks(1).Location.Row - 1

einen Laufzeitfehler "9"

Vielen Dank im voraus

c_80

2 Antworten

0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo c_80,

Teste einmal diesen Code vielleicht geht er auch unter Windows 7, mit meinem Windows XP geht's

Private Sub CommandButton1_Click()
Dim lngLastRow
With ActiveSheet 'Tabellenblatt eventuell anpassen
lngLastRow = .Cells.Find(What:="*", After:=.Range("A1"), SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
End With
MsgBox "letzte Zeile: = " & lngLastRow
End Sub

Gruß

Paul1

Excel 2003
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo c_80,

hab gerade gesehen und nach Test Deines Code meinst Du die Seite1 und nicht die Tabelle, dann bringt Dir mein Lösungsvorschlag nichts, sorry.

Gruß

Paul1
...