Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Benanntenbereich über Variable ansprechen

Benanntenbereich über Variable ansprechen
06.11.2007 15:14:21
Reinhard
Hallo Wissende,
wie bzw. kann ich überhaupt einen benannten Bereich "Bereich1" über eine Variable "Bez" ansprechen der ich den Wert "Bereich1", also den Bereichsnamen, zugewiesen habe?
Option Explicit
'

Sub tt()
Dim Bez 'As String
ActiveWorkbook.Names.Add Name:="Bereich1", RefersToR1C1:="=Tabelle1!R1C1"
Bez = "Bereich1"
[Bez] = "abc" ' kein Fehler, aber nichts sichtbares passiert
'["Bez"] = "abc2" '424 Objekt erforderlich
'Range("Bez") = "def" '1004 Range fehlgeschlagen
'Range(Bez) = "ghi" '1004 Range fehlgeschlagen
' Funktioniert:
ActiveWorkbook.Names.Add Name:="Bereich2", RefersToR1C1:="=Tabelle1!R2C1"
[Bereich2] = "abc"
End Sub


Danke ^ Gruß
Reinhard

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Benanntenbereich über Variable ansprechen
06.11.2007 15:20:13
Rudi
Hallo,
Range(Bez) = "abc"
geht.
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Eckige Klammern vs Range()
06.11.2007 15:48:45
Reinhard
Hallo Rudi,
danke dir.
Zumindest 3 Fragen dazu:
a) Kann ich daraus folgern, mit eckigen Klammern geht es nicht!?
b) Und gleich was Grundsätzliches dazu, soll(te) man sich die eckigen Klammern an- oder sofort gleich abgewöhnen?
(Bei mir bremsen sie z.B. die Eingabe, den Eingabefluß ab, subjektiv habe ich das Gefühl ich habe schneller 'range("' geschrieben als '[' gedrückt.)
c) Und mangels OpenOffice, Excel für Mac, Excel2007, werden sie in den 3 Fällen überhaupt akzeptiert?
Wegen dieser vielen Fragen stelle ich noch mal auf offen.
Gruß
Reinhard

Anzeige
AW: Eckige Klammern vs Range()
06.11.2007 16:09:14
Rudi
Hallo,
a) sieht so aus
b) [] sind eine ziemliche Performancebremse. Besser gar nicht erst angewöhnen.
[A1] langsamer als Range("A1") langsamer als cells(1,1)
for i=1 to 5000
[a1]=pi*i
[a1]=sqr[a1]
next
dauert bei mir ca. 0,7 Sekunden länger als
for i=1 to 5000
cells(1,1)=pi*i
cells(1,1)=sqr(cells(1,1))
next
c) keine Ahnung
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige
AW: Eckige Klammern vs Range()
06.11.2007 16:46:57
Reinhard
Alles klar,
the winner is "Range()", danke dir.
Gruß
Reinhard

Ergänzung
06.11.2007 17:25:00
mpb
Hallo,
noch eine Alternative:

Sub test()
Dim rg As Range
Set rg = Range("D3")
rg = "abc"
End Sub


Gruß
Martin

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige