Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1676to1680
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Letzte belegte Zelle

Letzte belegte Zelle
16.02.2019 15:47:16
Eddie
Hallo,
das Thema ist nicht neu. Sucht man nach dieser Problemstellung findet man viele Antworten - allerdings häufig nichts genau passendes.
Ich suche eine einfache und sichere Methode, die letzte belegte Zelle (oder die erste komplett freie Zeilen-Nr.), eines zusammenhängenden Spaltenbereichts rauszufinden.
Gesetzte Formatierungen sollen ignoriert werden - es geht nur darum, wo tatsächlich etwas in der Zelle drin steht.
Beispiel:
Ich will angeben Spalte 1-4
Der letzte Text in Spalte 1,2 und 4 steht in Reihe 2
Der letzte Text in Spalte 3 steht in Reihe 4
Die letzte Formatierung steht in Reiher 6
Dann möchte ich als Ergebnis 4 erhalten (oder 5 die erste komplett freie Zeile)
Vielleicht hat jemand einen vorbereiteten Code, der die Anforderung erfüllt.
Viele Grüße

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Letzte belegte Zelle
16.02.2019 15:51:24
Hajo_Zi
Deine Beschreibung wiederspricht sich, ich gehe mal davon aus Du möchtest die letzte belegt Zeile haben
MsgBox Columns("A:D").SpecialCells(xlCellTypeLastCell).Row

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
AW: Letzte belegte Zelle
16.02.2019 16:40:49
Eddie
Hallo Hajo,
auch nach mehrmaligem lesen, finde ich nichts, was sich an meinem Beitrag wiederspricht. Was ich in Klammern geschrieben habe, ist eine alternative Option.
Der Vorgeschlagene Code liefert leider nicht das gewünschte Ergebnis, er gibt im Beispiel den Wert 6 zurück, obgleich die Zeilen 5 und 6 Leer
Viele Grüße
Anzeige
AW: Letzte belegte Zelle
16.02.2019 16:42:34
Hajo_Zi
es ist die 4 Zeile belegt und die 2 Zeile ist frei. Du wolltest die erste freie Zeile.
Gruß Hajo
AW: Letzte belegte Zelle
16.02.2019 18:13:22
Luschi
Hallo Fred,
leider ist 'xlCellTypeLastCell' für diesen Zweck überhaupt nicht geeignet, denn es wird immer die letzte belegt Zelle aus der Gesamtheit aller Zellen im Tabellenblatt zurückgegeben.
So wird Range("A1").SpecialCells(xlCellTypeLastCell).Row niemals 1 zurückgeben, sobald irdendeine Zelle ab Zeile 2 belegt ist.
Trotzdem behauptet die Vba-Online-Hilfe: xlCellTypeLastCell. Die letzte Zelle im verwendeten Bereich
Das ist aber kein Übersetzungsfehler denn der engl.-amerikan. Hilfetext lautet: The last cell in used Range
Gruß von Luschi
aus klein-Paris
Anzeige
Letzte belegte Zeile (nicht Zelle)
16.02.2019 16:54:45
WF
Hi,
es geht um die Spalten A bis D.
folgende Arrayformel (steht außerhalb von A:D)
{=MAX((A1:D500"")*ZEILE(X1:X500))}
WF
AW: Letzte belegte Zeile (nicht Zelle)
16.02.2019 19:47:48
Eddie
Hallo WF,
möglicherweise steckt in Deinem post der richtige Lösungsansatz, nur leider vermag ich nicht daraus einen vba code zu machen.
Ich merke, dass das Problem wohl doch nicht so leicht zu lösen ist.
Nochmal was ich suche
Einen VB-Code der mir die Reihennummer der letzten, mit Werten oder Formeln belegte Zelle eines zusammenhängenden Spaltenbereichs ausgibt. Zellen die einfach nur eine Formatierung haben, sollen nicht berücksichtigt werden.
Viele Grüße
Anzeige
AW: Letzte belegte Zeile (nicht Zelle)
17.02.2019 11:31:11
Werner
Hallo,
oder mit einer Schleife über die einzelnen Spalten:
Public Sub aaa()
Dim loMax As Long, i As Long
Dim loLetzte As Long, loLetzte1 As Long
'Blattname anpassen
With Worksheets("Tabelle1")
loMax = .Cells(.Rows.Count, 3).End(xlUp).Row
'Schleife von Spalte A (=1) bis Spalte G (=7) anpassen
For i = 3 To 7
loLetzte = .Cells(.Rows.Count, i).End(xlUp).Row
loLetzte1 = loLetzte
If loLetzte1 > loMax Then loMax = loLetzte1
Next i
End With
MsgBox loMax
End Sub
Gruß Werner
AW: Letzte belegte Zeile (nicht Zelle)
17.02.2019 14:27:55
Eddie
Danke
Gerne u. Danke für die Rückmeldung. o.w.T.
17.02.2019 16:22:14
Werner
AW: Letzte belegte Zelle
17.02.2019 08:29:27
Sepp
Hallo Eddie,
so?
Modul Modul1
Option Explicit 
 
Sub letzteZelle() 
  Debug.Print lastCell("A:C") 
End Sub 
 
Private Function lastCell(ByVal RangeAddress As String, Optional ByVal lastRow As Boolean = True) As Long 
  Dim varLast As Variant 
 
  If lastRow Then 
    varLast = Evaluate("MAX(IF(" & RangeAddress & "<>"""",ROW(" & RangeAddress & ")))") 
  Else 
    varLast = Evaluate("MAX(IF(" & RangeAddress & "<>"""",COLUMN(" & RangeAddress & ")))") 
  End If 
 
  If IsError(varLast) Then 
    lastCell = -1 
  Else 
    lastCell = varLast 
  End If 
End Function 

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Letzte belegte Zelle
17.02.2019 14:30:53
Eddie
Ja, Danke

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige