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

In Argument Bezug nehmen auf das Worksheet

In Argument Bezug nehmen auf das Worksheet
30.01.2014 17:09:48
Peter
Guten Abend
Mit untenstehendem Code wird die letzte verwendete Zelle in Spalte A im Worksheet "Aktive" mit "LastCellA" benannt.
Dazu übergebe ich einer Funktion die entsprechenden Argumente und das funktioniert so auch.
Nun habe ich mich gefragt, ob ich das 2. Argument auch anders übergeben kann, da ja die ganze Aktion mit diesem Sheet passiert. Aber hier wird ja wahrscheinlich so etwas wie "Me" oder ähnlich nicht geben, oder?
Gruss, Peter
With ThisWorkbook.Sheets("Aktive")
Call CreateBereich2222("LastCellA", ThisWorkbook.Sheets("Aktive"), .Range("_a_Pfad").Column, .Cells(.Rows.Count, 1).End(xlUp).Row, .Range("_a_Pfad").Column, .Cells(.Rows.Count, 1).End(xlUp).Row)
End With

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: In Argument Bezug nehmen auf das Worksheet
30.01.2014 19:19:57
Stefan
Hallo Peter,
das kommt darauf an, wo dein Code steht. Steht er in einem Tabellenmodul und heißt das auch noch "Aktive" dann funktioniert das mit Me. Was ich mich aber bei deinen Code frage: wieso übergibst Du die Spalte und die letzte verwendete Zeile der Spalte A zweimal? Einmal als drittes und viertes Argument und dann als fünftes und sechstes Argument.
Gruß Stefan

AW: In Argument Bezug nehmen auf das Worksheet
31.01.2014 07:29:04
Peter

Hallo Stefan
Ich brauche den Sub CreateBereich2222 in der Regel für meine Bereichsdefinitionen - und  _
vielfach umfassen die Bereiche mehrere Zellen. Im vorliegenden Fall wird halt nur eine Zelle benannt, weshalb je zwei Argumente gleich sind.
Danke und Gruss, Peter
Sub CreateBereich2222(strBereichsname As String, wkTabelle As Worksheet, spLinks As Long, zeUp  _
As Long, spRechts As Long, zeDown As Long)
Dim Bereich As Range
Set Bereich = Worksheets(wkTabelle.Name).Range(wkTabelle.Cells(zeUp, spLinks), wkTabelle.Cells( _
zeDown, spRechts))
ActiveWorkbook.Names.Add _
Name:=strBereichsname, _
RefersTo:=Bereich, Visible:=True
End Sub

Anzeige
AW: In Argument Bezug nehmen auf das Worksheet
31.01.2014 10:05:05
Rudi
Hallo,
warum übergibst du die Argumente 'falsch herum'?
Üblich ist Zeile, Spalte
Sub CreateBereich2222(strBereichsname As String, _
wkTabelle As Worksheet, _
ErsteZeile As Long, _
ErsteSpalte As Long, _
LetzeZeile As Long, _
LetzeSpalte As Long)
With wkTabelle
.Range(.Cells(ErsteZeile, ErsteSpalte), .Cells(LetzeZeile, LetzeSpalte)).Name =  _
strBereichsname
End With
End Sub
Sub xxxx()
Dim wks As Worksheet
Set wks = ThisWorkbook.Sheets("Aktive")
With wks
Call CreateBereich2222( _
"LastCellA", _
wks, _
.Cells(.Rows.Count, 1).End(xlUp).Row, _
.Range("_a_Pfad").Column, _
.Cells(.Rows.Count, 1).End(xlUp).Row, _
.Range("_a_Pfad").Column)
End With
End Sub

Alternativ kannst den Bere ich direkt an deine Funktion übergeben.
Sub CreateBereich2222(strBereichsname As String, rngBereich As Range)
With rngBereich
.Name = strBereichsname
End With
End Sub
Sub xxxx()
Dim wks As Worksheet
Set wks = ThisWorkbook.Sheets("Aktive")
With wks
Set rngBereich = .Range(.Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, .Range("_a_Pfad"). _
Column), _
.Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, .Range("_a_Pfad"). _
Column))
End With
CreateBereich2222 "LastCellA", rngBereich
End Sub

Gruß
Rudi

Anzeige
AW: In Argument Bezug nehmen auf das Worksheet
31.01.2014 11:26:20
Peter
Hallo Rudi
Dieser Sub ist noch von meinen Anfängen ...
Danke für die Erläuterung.
Gruss, Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige