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

Verarbeitung definierter Namen

Verarbeitung definierter Namen
06.11.2020 17:21:19
Kay
Hallo,
folgende Funktion funktiniert einwandfrei bei Aufruf DatafeederAuslesen1(Testbereich), wobei _
Testbereich ein defiierter Name ist

Public Function DatafeederAuslesen1(oRange1 As Range) As String
DatafeederAuslesen1 = oRange1.Worksheet.Name & "!" & oRange1.Address
End Function

Was bitte mache ich aber bei folgender abgewandelter Funktion falsch, wenn ich wie folgt ü _
bergebe: DatafeederAuslesen2("Testbereich")

Public Function DatafeederAuslesen2(oName) As String
Dim oRange2 As Range
oRange2 = Range(oName)
DatafeederAuslesen2 = oRange2.Worksheet.Name & "!" & oRange2.Address
End Function

Irgendwie sind jeweils die Objekte oRange1 und oRange2 unterschiedlich...
D&G
Kay

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verarbeitung definierter Namen
06.11.2020 17:26:17
Hajo_Zi
Hallo Kay,
ich würde vermuten
set oRange2 = Range(oName)
Warum das?

AW: Verarbeitung definierter Namen
06.11.2020 17:36:22
Kay
Hallo Hajo,
nun gut, aber warum?
Wie weise ich denn einem Range Objekt auch ein Rage über einen definierten Namen zu?
Bei der ersten Funktion ist die Variable auch als Range definiert.
oRange2 = oName
funktioniert leider auch nicht.
Eine Idee?
VG Kay
AW: Verarbeitung definierter Namen
06.11.2020 17:36:42
ralf_b
Hallo,
Einmal übergibst du ein Objekt und einmal einen String.
Wie Hajo schon geschrieben hat scheint da ein "Set" zu fehlen.
Und Wenn du ein Objekt übergibst, dann hat dieses Objekt alle Eigenschaften schon mitgebracht.
set oRange2 = Range(oName) erzeugt ein Objekt basierend auf dem aktuellen Worksheet. Ohne Eigenschaften von irgendwoher mitzubringen.
"Irgendwie anders" wäre interessant was du damit meinst.
Anzeige
AW: Verarbeitung definierter Namen
06.11.2020 17:48:58
Kay
Hallo,
im ersten Aufruf übergebe ich einen Namen, der in eine definierte Range Variabel übergeht. Wenn ich dich richtig verstehe behandelt das Excel als Objekt.
Beim 2. Aufruf möchte ich das gleiche erreichen. Wie muß ich denn dann die Variable oRange2 setzen, damit ich zum gleichen Ergebnis komme, wie bei der ersten Funktion.
D&G Kay
AW: Verarbeitung definierter Namen
06.11.2020 18:11:18
ralf_b
1. du übergibst ein Objekt des Typs Range. Das existiert schon und es wird eigentlich nur eine Referenz auf dieses Objekt übergeben. Objekte werden mit "Set oRange1 = "initialisert
2. du übergibst einen Text. "Testbereich" das ist kein Objekt, sondern nur irgendein Text. Das Objekt erzeugst du erst mit dem Range(oName) aber dafür fehlt ja das "Set". Und wenn der schon existiert könnte es zum Fehler kommen. Vermute ich. Solltest du existierende Bereichsnamen suchen,dann in der Names Auflistung z.b. ActiveWorkbook.Names die Addresse mit Worksheet geht
z.b. so ActiveWorkbook.Names("Testbereich").refersTo
Anzeige
AW: Verarbeitung definierter Namen
06.11.2020 18:20:56
Kay
Super - hat nun funktioniert.
mit set oRange = Range(oName).
Aber auch dein Beispiel ist charmat.
Thanks Kay

145 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige