Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Letzter Zeile mitangezeigtem Wert.

Betrifft: Letzter Zeile mitangezeigtem Wert. von: Volker
Geschrieben am: 29.04.2008 07:37:33

Hallo liebe Excel-Gemeinde.

Ich schaue gern vorbei und habe viele Probleme auch ohne Posten lösen können.
Aber in diesem Fall habe ich das Forum durchsucht sowie bin auch beim googeln nicht fündig geworden.
Folgendes Problem:
Ich habe einen Bereich sagen wir A1:A20, in dem Formeln stehen.
So etwa =WENN(B1=0;"";B1), bis A20...
Sagen wir der letzte Wert steht in A10.
Nun siche ich die Zeile, in der der letzte WERT steht.
Da aber bis A20 noch Formeln enthalten sind bekomme ich mit den mir bekannten VBA-Codes oder Excelformeln immer nur die 20 zurück.

Ich brauche in dem Fall aber 10.
Hoffe mir kann geholfen werden.

Vielen Dank schonmal.
Gruß Volker

  

Betrifft: AW: Letzter Zeile mitangezeigtem Wert. von: Erich G.
Geschrieben am: 29.04.2008 08:03:10

Hallo Volker,
zwei Möglichkeiten:

Option Explicit

Sub Letzte()
   Dim rngF As Range
   Set rngF = Columns("A:A").Find(What:="*", After:=Cells(1, 1), LookIn:=xlValues, _
      LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, _
      MatchCase:=False, SearchFormat:=False)
   If Not rngF Is Nothing Then MsgBox rngF.Row
'oder
   MsgBox Evaluate("=MAX(ROW(A1:A1000)*(A1:A1000<>""""))")
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort


  

Betrifft: AW: Letzter Zeile mitangezeigtem Wert. von: Volker
Geschrieben am: 29.04.2008 08:08:38

Hallo ErichG,

ich bin begeistert!
Die 2. Variante geht prima.
Wieder was gelernt.

Vielen Dank.


  

Betrifft: AW: Letzter Zeile mitangezeigtem Wert. von: Beverly
Geschrieben am: 29.04.2008 08:06:27

Hi Volker,

du kannst mit einer Schleife über alle Zellen laufen und prüfen, welche als letzte einen Wert enthält.

Sub letzte_belegte()
    Dim loZeile As Long
    Dim loLetzte As Long
    For loZeile = 1 To IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row,  _
Rows.Count)
        If Cells(loZeile, 1) <> "" Then loLetzte = loZeile
    Next loZeile
    MsgBox loLetzte
End Sub





GrußformelBeverly's Excel - Inn


  

Betrifft: AW: Letzter Zeile mitangezeigtem Wert. von: Volker
Geschrieben am: 29.04.2008 08:17:47

Hallo Beverly,

Deine Version funzt auch.
Hätte nicht gedacht, dass es da sogar mehrere Möglichkeiten gibt zum Ergebnis zu kommen.

Gruß Volker


 

Beiträge aus den Excel-Beispielen zum Thema "Letzter Zeile mitangezeigtem Wert."