Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1156to1160
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 Zelle ab Spalte x finden

letzte Zelle ab Spalte x finden
manu
Hey zusammen,
ich hänge schon ne Weile an folgendem Problem:
Ich möchte die letzte Zelle einer Zeile finden. Die Suche soll aber erst ab Spalte 11 anfangen.
so habe ich das bisher geschrieben:
Sub leZelle()
dim leZelle as Long
leZelle = Cells(1, Columns.Count).End(xlToLeft).Column
msgbox leZelle
End Sub
kann mir jemand von euch da weiterhelfen?
Das wäre super lieb.
LG
Manu
letzte Zelle - wozu VBA ?
15.05.2010 14:13:51
WF
Hi,
Spaltenzahl:
=VERWEIS(2;1/(K1:Z1"");SPALTE(K1:Z1))
Zellinhalt:
=VERWEIS(2;1/(K1:Z1"");K1:Z1)
Salut WF
AW: letzte Zelle - wozu VBA ?
15.05.2010 14:16:36
manu
Hallo WF
danke für deine Antwort.
Ich brauche es aber in VBA, da ich mit dem code noch weiterarbeiten möchte, d.h. ich möchte die gefundene Zelle dann wieder nehmen und weitere Abfragen machen. Das geht in dem Fall halt nur mit VBA.
LG
Manu
AW: VBA klebt nicht in Zellen - dazu
15.05.2010 15:08:31
Gerd
Hallo Manu,
so beispielsweise.
Sub egal()
Dim x As Range
Set x = LetzteZelle(11)
MsgBox x.Address(1, 1, xlA1, True)
End Sub
Function LetzteZelle(Optional lngErsteSpalte As Long = 1, Optional lngZeile As Long = 1,  _
Optional objTabelle As Worksheet) As Range
If objTabelle Is Nothing Then Set objTabelle = ActiveSheet
Set LetzteZelle = objTabelle.Cells(Application.Max(lngErsteSpalte, objTabelle.Cells(lngZeile,  _
objTabelle.Columns.Count).End(xlToLeft).Column))
End Function
Gruß Gerd
Anzeige
AW: VBA klebt nicht in Zellen - dazu
15.05.2010 15:32:57
manu
Hallo Gerd,
vielen lieben Dank für deine Antwort. Weißt du vielleicht warum:
leZelle = Range(Cells(akZeile, 11), Cells(akZeile, Columns.Count)).End(xlToLeft).Column
nicht funktioniert?
Da wäre doch die range definiert in der die Abfrage stattfinden soll. Warum findet mir das trotzdem nicht den richtigen Wert?
komm näher. Vielleicht noch eine Idee
15.05.2010 15:44:14
manu
Ich bin der Lösung ein klein wenig näher gekommen:
leZelle = Range(Cells(akZeile, 11), Cells(akZeile, Columns.Count)).End(xlToRight).Column
jetzt nimmt es mir aber die erste beschriebene Zelle und nicht die letzte...
noch ein wenig dann haben wir's ;)
Vielleicht hat einer noch eine Idee?
Anzeige
AW: komm näher. Vielleicht noch eine Idee
15.05.2010 16:12:35
Gerd
Hallo Manu,
abgekürzt ist das einfach zuviel des Guten.
Willst Du die letzte gefüllte Zelle von rechts außen gesehen, dann ist Cells(1, Columns.Count) u. End(xlToLeft) die Basis.
Möchtest Du von Cells(1, 11) ausgehend über eine gefüllte "Reihe" die letzte Zelle ermitteln, dann
Cells(1, 11).End(xlToRight) .
Oder möchtest Du deren Spaltenindex? Davon hängt dann ab wie Du deine Variable deklarieren musst.
leSpalte = ... .Column (Dim leSpalte As Long)
Set leZelle= Cells(....). ... (Dim leZelle As Range)
Gruß Gerd
AW: komm näher. Vielleicht noch eine Idee
15.05.2010 16:38:34
manu
Hallo Gerd,
vielen Dank für deine Antwort.
Ich möchte cells(1,11).end(xlToRight).
Das beschreibt genau was ich möchte. Ab cell(1,11) soll es rechts davon durchsuchen, welche die LETZTE beschriebene Zelle ist.
Mit dem code bekomme ich aber die ERSTE beschrieben Zelle. Ansonsten ist das absolut richtig.
LG
Manu
Anzeige
ok, klar das geht natürlich...
15.05.2010 16:51:46
manu
ach man verd...!
natürlich! in meinem Fall geht das jetzt auch mit dem zurückzählen. So ein Mist! Jetzt hab ich solang dran rum gemacht...
Vielen Dank Gerd!!!
LG
Manu

313 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige