länge einer tabelle ermitteln

hallo zusammen,

ist es möglich in excel die länge der tabelle, d.h. anzahl benutzter zeilen zu ermitteln und diese dann als variable (Zeilen) in einem marko einzusetzen, z.b. Range(A1:A(Zeilen))
da ich nicht immer Range(A1:A65536) verwenden will, weil das makro sonst ein ewigkeit benötigt, wenn es auf das ganze blatt angewendet wird.

vielen dank schon mal für eure hilfe.

Hallo Frank,

mit folgenden Befehlen kann die Anzahl benutzer Zeilen oder Spalten einfach ermittelt werden:
nMaxZeilen = ActiveSheet.UsedRange.Rows.Count
nMaxSpalten = ActiveSheet.UsedRange.Columns.Count
Alternativ per direktem Zugriff:
Sheets(„sTabellenname“).UsedRange.Rows.Count

Wenn das Ergebnis in einem Range verwendet werden soll, ist etwas Nacharbeit nötig, da der String zusammengebaut werden muss.

Gruß Armin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Armin,
danke für deine antwort, leider bin ich kein experte und kann mit
„…ist etwas Nacharbeit nötig, da der String zusammengebaut werden
muss“ nich viel anfangen.
Kannst du mir da vielleicht weiterhelfen und sagen wie das funktioniert?

DANKE!

Geuss
Frank

Hallo Frank,

mit folgenden Befehlen kann die Anzahl benutzer Zeilen oder
Spalten einfach ermittelt werden:
nMaxZeilen = ActiveSheet.UsedRange.Rows.Count
nMaxSpalten = ActiveSheet.UsedRange.Columns.Count
Alternativ per direktem Zugriff:
Sheets(„sTabellenname“).UsedRange.Rows.Count

Wenn das Ergebnis in einem Range verwendet werden soll, ist
etwas Nacharbeit nötig, da der String zusammengebaut werden
muss.

Gruß Armin

Hallo!

Dieser Befehl markiert den gesamten aktiven Arbeitsbereich

Range(Cells(1, 1), Cells(Cells.SpecialCells(xlCellTypeLastCell).Row, Cells.SpecialCells(xlCellTypeLastCell).Column)).Select

Wenn Du allerdings einfach nur die Zeilennummer/Spaltennummer wissen willst, bis zu der Dein Makro laufen soll, dann mach’ es so:

LetzteBenutzteZeile = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
LetzteBenutzteSpalte = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Column

Viel Erfolg!

Gruß
(Woly)

Hallo Woly,

vielen Dank, das hat mir sehr weitergeholfen,
hab jetzt endlich ein lösung für mein problem gefunden indem ich deinen vorschlag etwas abgewandelt habe:

Range(Cells(1, 1), Cells(Cells.SpecialCells(xlCellTypeLastCell).Row, 1)).Select

Gruss
Frank

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Frank,

da habe ich es bisher wohl etwas zu umständlich gemacht. Auch mit den von mir vorgeschlagenen Funktionen kann man (entsprechend Wolys Vorschlag) per cells(FunktionletzteZeile, FunktionLetzteSpalte) die letzte belegte Zelle dynamisch ansprechen und braucht keinen String für den Range zusammenbauen.
Falls es Dich trotzdem interessieren sollte, melde Dich nochmals.

Gruß Armin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

ist es möglich in excel die länge der tabelle, d.h. anzahl
benutzter zeilen zu ermitteln und diese dann als variable
(Zeilen) in einem marko einzusetzen, z.b. Range(A1:A(Zeilen))
da ich nicht immer Range(A1:A65536) verwenden will, weil das
makro sonst ein ewigkeit benötigt, wenn es auf das ganze blatt
angewendet wird.

Hi Frank,
zei=range(„A65536“).end(xlup).row
schwächelt ein wenig wenn A65536 voll ist oder Spalte a leer ist.
Gruß
Reinhard