Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1536to1540
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

Letze Zeile in ausgewähltem Bereich

Letze Zeile in ausgewähltem Bereich
24.01.2017 13:49:02
Marsch
Hallo zusammen,
nachdem mir vorhin so schnell geholfen wurde trete ich nun mit einem anderen Problem an euch, was mich seit geraumer Zeit plagt.
Folgendes:
Ich habe eine Tabelle mit 12 Zeilen. Davon werden teilweise Welche ausgeblendet.
Nun möchte ich in der 13. Zeile jeweils den letzten sichtbaren Wert der Spalte haben.
Bisher habe ich es folgendermaßen gelöst:

Sub XXX()
If Sheets("YYY").Rows("161:161").Hidden = False Then
Sheets("YYY").Activate
Sheets("YYY").range("C162").Select
ActiveCell.Formula = "=C161"
Sheets("YYY").range("D162").Select
ActiveCell.Formula = "=D161"
Sheets("YYY").range("E162").Select
ActiveCell.Formula = "=E161"
Sheets("ZZZ").Activate
Sheets("ZZZ").range("A1").Select
ElseIf Sheets("YYY").Rows("160:160").Hidden = False Then

Das fragt der nun für jede Zeile ab. Sehr langwierig für eine eigentlich einfache Prozedur.
Folgende Ansätze kriege ich aber leider nicht bis zum Ende gedacht:
Habe den Tabellenbereich (Zeilen 1-12 benannt)
habe überlegt es mit einer Kombination aus

range("Name").specialcells(xlCellTypeVisible).Cells(Rows.Count,1).End(xlUp).Row
Ich komme aber einfach nicht auf einen grünen Zweig.
Nochmal zusammenfassend:
In A13 soll die letzte sichtbare Zelle von A1:A12 stehen, in B12 aus B1:B12.. usw.
Bitte gebt mir den entscheidenden Denkanstoß!
Danke vielmals
Marsch

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Letze Zeile in ausgewähltem Bereich
24.01.2017 18:49:29
ChrisL
Hi nochmal
Ein paar Punkte sind verwirrend:
- die unterschiedlichen Tabellennamen im Mustercode
- Zeile 161 oder doch 1-12
- die Zusammenhänge, bitte zukünftig bei Folgefragen verlinken:
https://www.herber.de/forum/messages/1536972.html
Aus dem ersten und zweiten Beitrag reime ich mir folgende Antwort zusammen:
Sub test_range()
Dim i As Integer
Dim lrow As Integer
With Worksheets("testsheet")
lrow = .Range("testarea").SpecialCells(xlCellTypeVisible).Cells(Rows.Count, 2).End(xlUp).Row
For i = 1 To lrow
If .Cells(i, 2) = .Range("A12") Then
.Rows(i).Hidden = False
.Range("C162").Formula = "=C" & i
.Range("D162").Formula = "=D" & i
.Range("E162").Formula = "=E" & i
Else
.Rows(i).Hidden = True
End If
Next i
End With
End Sub
cu
Chris
Anzeige
AW: Letze Zeile in ausgewähltem Bereich
25.01.2017 08:20:43
Marsch
Hallo Chris,
entschuldige das war ein Patzer. Habe den Originalcode quasi "geschwärzt" (Datenschutzvereinbarungen sind doch was tolles!).
Schlussendlich soll es in der Zeile 163 stehen, der Einfachheit halber hatte ich hier 1-12 bzw. 13 gewählt.
Es Bestand zwar kein direkter Zusammenhang, weil es um eine andere Tabelle geht, bei ähnlichem Aufbau, aber schlussendlich hast du Recht. Ich gelobe Besserung!
Weiterhin vielen Dank für deinen Ansatz, ich werde den im Laufe des Tages prüfen und eine Rückmeldung ob der Funktion geben!
Grüße

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige