Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
620to624
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
620to624
620to624
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Übergabe (Referenz zwischen zwei Funktionen)

Übergabe (Referenz zwischen zwei Funktionen)
07.06.2005 17:18:59
Stephan
Dies ist nun der letzte Teil meiner Range-Odysee. Danke an Alle !
Nur noch ein kleines Problem. Habe jetzt die funktionierende Funktion GetLastRow, die mit die definitv letzte "richtig" beschriebene Zeile liefert. Ich benötige jetzt nur noch die richtige Übergabe an meine Sub. In meiner

Sub durchlaufe ich alle sheets, bei denen eine Range gebildet werden soll. Die GetLastRow-Funktion muss nur noch ihren Wert richtig zurückgeben. Leider funzt es
noch nicht so richtig....
'Funktion : GetLastRow (4.Spalte ist ausreichend für Überprüfung)

Function GetLastRow(Optional spalte As Integer = 4) As Long
GetLastRow = Rows.Count
If Cells(GetLastRow, spalte).Value = "" Then GetLastRow = Cells(GetLastRow, spalte).End(xlUp).Row
End Function

'Sub DatenRangesBilden
Sub DatenRangesBilden()
lastR As Long
Dim blatt As Worksheet
' Range für sheet1, sheet2 und sheet3 bilden
For Each blatt In ActiveWorkbook.Sheets
lastR = GetLastRow(blatt.Columns(4))
ActiveWorkbook.Names.Add Name:=blatt.Name, RefersTo:= _
"=" & blatt.Name & "!" & _
"$28:$" & lastR
Next
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Übergabe (Referenz zwischen zwei Funktionen)
07.06.2005 17:28:36
EffHa
Warum macht man es sich so kompliziert?
mit dieser Zeile ermittel man die letzte Zeile eines Excel-sheets:
LetzteZeile = Cells.SpecialCells(xlCellTypeLastCell).Row
Gruß
Fritz
AW: Übergabe (Referenz zwischen zwei Funktionen)
07.06.2005 17:37:52
Stephan
Leider will ich hier nicht noch mal erklären warum diese von Dir genannte Method
e nicht geht. Geht wirklich nicht. Weit und breit ausprobiert. Ich habe jetzt nur noch die Frage, wie ich die Variable lastR so zurückgegeben bekomme, dass er sie für jedes Worksheet neu errechnet. Momentan tut er dás immer nur für das Aktivierte Sheet. Eigentlich glaubte ich das mit der "For each worksheet" Funktion erledigt zu haben.

Function GetLastRow(spalte As Integer) As Long
GetLastRow = Rows.Count
If Cells(GetLastRow, spalte).Value = "" Then GetLastRow = Cells(GetLastRow, spalte).End(xlUp).Row
End Function

'Prozedur : DatenRangesBilden

Sub DatenRangesBilden()
Dim i As Long, lastR As Long
Dim blatt As Worksheet
' Range für sheet1, sheet2 und sheet3 bilden
For Each blatt In ActiveWorkbook.Sheets
lastR = GetLastRow(4)
ActiveWorkbook.Names.Add Name:=blatt.Name, RefersTo:= _
"=" & blatt.Name & "!" & _
"$28:$" & lastR
Next
End Sub

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige