Letzte Zelle unten rechts finden oder: Wo hören die Daten auf?

  • Excel

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Adrian.

    Letzte Zelle unten rechts finden oder: Wo hören die Daten auf?

    Hallo,

    wie finde ich die Zelle, dessen Spalte und Zeile dem Maximalwert aller vorhandenen entspricht, also die Zelle, die Excel automatisch für die Einrichtung des Druckbereiches annimmt, wenn man manuell keinen Druckbereich einrichtet?

    Ich will nicht alle 256 * 65767 Zellen scannen, um den Ort zu finden, wo die Daten aufhören. Das müßte doch ein Wert sein, den man direkt ansprechen kann. Aber wie?

    Frage war hoffentlich verständlich...
    Ich brauche das, um den tatsächlich belegten Bereich herauszufinden. Und zwar auch dann, wenn die Daten Lücken (leere Zellen) haben.

    Vielen Dank schon mal!


    Timo

    <edit Wort doppelt

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „dwt73“ ()

    "UsedRange" scheint es bei mir nicht zu geben (Fehlermeldung, dass die Methode nicht existiert). Ich habe Excel 2002. Ich benutze immer:

    Visual Basic-Quellcode

    1. Range("A1").SpecialCells(xlCellTypeLastCell).Row
    bzw. .Column und für den Bezug im "A1"-Format .Address.

    .... zumindest so lange man nichts löscht

    Nach Löschen diverser Zeilen und Spalten ist mein tatsächlich von Daten benutzter Bereich deutlich kleiner.
    Trotzdem werden immer noch die Maximalwerte von vorher angegeben.
    Nach dem Löschen nur A1 zu selektieren nutzt da gar nix, wahrscheinlich muß man die Mappe speichern, schließen und wieder öffnen, oder gibt's da noch was Elegantes?

    Besten Dank...

    Timo


    Zur Info mein Code, der Zeilen löscht:

    Visual Basic-Quellcode

    1. For i = v_AnzSätzeAusgangsdatInclÜb To 2 Step -1
    2. If v_BleibVekt(i) = False Then ' löschen!
    3. Cells(i, 1).Select
    4. Selection.EntireRow.Delete
    5. v_gelöschte = v_gelöschte + 1
    6. End If
    7. Next i
    Hallo,

    ich verwende bei sowas immer CurrentRegion. Setzt allerdings voraus, daß Du eine Zelle benennen kannst die zum Datenbereich gehört:

    Quellcode

    1. Dim tabelle as range
    2. tabelle = Range("A1").CurrentRegion


    anschließend kannst Du mit .rows usw weitermachen
    Auf

    Visual Basic-Quellcode

    1. Dim v_rng As Range
    2. Workbooks(v_Bookname).Sheets(v_Sheetname).Activate
    3. v_rng = Range("A1").CurrentRegion

    bekomme ich den Laufzeitfehler 91:

    "Objektvariable oder With-Blockvariable nicht festgelegt."

    Hab ich da was falsch verstanden? ?(

    Gruß
    Timo