Letzte Zeile in Spalte a ermitteln
#1
Hallo, vielleicht kann jemand mir bitte weiterhelfen - Danke!

Ich möchte gerne aus "Tabelle2" mittels Button die letzte Zelle in Spalte A in der Tabelle3 ermitteln. 

Die Ermittlung letzte Zelle in Spalte A nach öffnen der Datei "Test.xlsm" funktioniert einwandfrei.

Private Sub Workbook_Open()
        Dim letzte_Zeile As Long
        ' Finde die letzte gefüllte Zeile in Spalte A
        letzte_Zeile = Cells(Rows.Count, "A").End(xlUp).Row
       
        ' Springe zur letzten Zelle in Spalte A
        Cells(letzte_Zeile, "A").Activate
    End Sub

Die Ermittlung der letzten Zelle in Tabelle3 bekomme ich nicht hin.

Lg Ubi5


Angehängte Dateien
.xlsm   Test.xlsm (Größe: 21,34 KB / Downloads: 3)
Antworten Top
#2
Hi,

da würde ich es doch mal mit dem probieren:


Code:
letzte_Zeile = sheets("Tabelle3").Cells(Rows.Count, "A").End(xlUp).Row
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#3
Private Sub Workbook_Open()
        Dim letzte_Zeile As Long
        ' Finde die letzte gefüllte Zeile in Spalte A
        letzte_Zeile = Sheets("Tabelle3").Cells(Rows.Count, "A").End(xlUp).Row
       
        ' Springe zur letzten Zelle in Spalte A
        Application.Goto Sheets("Tabelle3").Cells(letzte_Zeile, "A")
    End Sub

Wobei du das in eine Zeile schreiben kannst:

Application.Goto Sheets("Tabelle3").Cells(Rows.Count, "A").end(xlUp)

Beim Arbeiten mit mehreren Tabrlenblättern solltest du immer die die Zellreferenz (Range,Cells,Columns,Rows) mit dem Tabellenblatt davor angeben.

Möchtst du eine Zelle auf einem Tabellenblatt selektieren, dass nicht das aktive ist, verwende Application.Goto.

Gruß Daniel
Antworten Top
#4
Hallo Edgar, hallo Daniel!

Danke für die Rückmeldung.

Vielleicht habe ich mich nicht richtig ausgedrückt.
Folgendes: In der Tabelle2 ist ein Button - mit diesen möchte ich die letzte Zelle in der Tabelle3 Spalte a anspringen.

Lg Ubi5
Antworten Top
#5
Wenn du einem Button verwendest, ist das Workbook-Open-Event unsinn.
Dass sollte man schon aus dem Makronamen ableiten können, dazu braucht es kein Expertenwissen, nur etwas gesunden Menschenverstand.


Ansonsten: nimm einfach die von mir gezeigte Einzelzeile als Code für das Makro des Buttons.

Gruß Daniel
Antworten Top
#6
Danke Daniel!
Danke Edgar!

Funktioniert!
Antworten Top
#7
Moin!
Ich möchte jemandem, der bald zweistelliges Forenjubiläum feiert, Daniels wichtigen Satz noch einmal ans Herz legen:
Zitat:Beim Arbeiten mit mehreren Tabrlenblättern solltest du immer die die Zellreferenz (Range,Cells,Columns,Rows) mit dem Tabellenblatt davor angeben.
Bei
Sheets("Tabelle3").Cells(Rows.Count, "A").End(xlUp)
bezieht sich Rows.Count auf das Sheet, in dem sich der Button befindet!
Dies wird spätestens dann ein Problem, wenn sich der Button in einem Diagramm-Blatt befindet, welches keine Rows hat!
Deshalb solltest Du Dich prinzipiell daran gewöhnen, korrekt zu referenzieren!

Genug der Ausrufezeichen …
Entweder
Sheets("Tabelle3").Cells(Sheets("Tabelle3").Rows.Count, "A").End(xlUp)
oder viel besser gleich mit einem With-Statement:
With Sheets("Tabelle3")
   .Cells(.Rows.Count, "A").End(xlUp)
End With
Punkte vor den Objekten beachten.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#8
@RPP

Erkläre bitte was ist das Unterschied zwischen

Code:
rows.count 
und
Code:
sheet1.rows.count

ergo: das With  .. End With statement ist in diesem Falle nur Murks.

Die Lösung von Daniel (application.goto) war schon die eleganteste.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#9
Hallo snb,

Ralf hatte es doch gut erklärt.

Extra für Dich: Wink
Code:
Sub Makro1()
    Charts.Add
    Debug.Print Sheets("Tabelle1").Cells(Rows.Count, "A").End(xlUp).Row
End Sub
Gruß, Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Jockel
Antworten Top
#10
@snb

Ralf hat es doch erklärt.

Allerdings ist das für mich ein Sonderfall, weshalb ich das nicht ständig berücksichtige.

Der zweite Fall, in dem Rows.Count nicht funktioniert wäre, wenn man mit mehreren Mappen die unterschiedliche Anzahlen an Zeilen haben, arbeitet.
Aber auch das dürfte mittlerweile nicht mehr vorkommen, da die Umstellung auf das neue Dateisystem jetzt auch 18 Jahre her ist und xls-Dateien kaum noch im Gebrauch sein dürften.

Gruß Daniel
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste