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

Zugriff auf benannte Zellen

Zugriff auf benannte Zellen
30.12.2007 20:33:01
Peter
Hallo Forum,
ist es möglich auf benante Bereiche in mehreren Tabellenblätter
zuzugreifen?
siehe Bsp.

Sub benannteZellen()
Dim rng As Range
Set rng = Evaluate(ActiveWorkbook.Names("xy").Name)
rng.Value = "benannte Zelle"
MsgBox rng.Value
End Sub


https://www.herber.de/bbs/user/48717.xls
Danke und einen guten Rutsch in's neue Jahr
Peter

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

Betreff
Datum
Anwender
Anzeige
AW: Zugriff auf benannte Zellen
30.12.2007 20:56:37
Daniel
Hi
sorry, ich verstehe das Problem nicht ganz.
kleiner Hinweis, die NAMEN lassen sich in Excel recht einfach verwenden:

Range("XY").value ="benannte Zelle"


würde völlig ausreichen.
wenn die Namen fürs ganze Workbook definiert sind, sollte es so kein Problem geben.
sind die Namen Sheet-Spezifisch definiert, muss man halt das Sheet noch dazusetzen.


Sheets("Tabelle1").Range("Druckbereich").select


wenn man den Zellbereich, der in einem Sheet per Namen definiert ist, in einem anderen Sheet verwenden, dann wirds etwas umständlicher, geht aber auch:


Sheets("Tabelle1").Range(Range("XY").address).select


würde die Zellen die als XY in Tabelle3 in Tabelle1 markieren
ich hoffe es war was für dich dabei, wenn nicht nochmal nachfragen.
Gruß, Daniel

Anzeige
AW: Zugriff auf benannte Zellen
30.12.2007 21:54:00
Luschi
Hallo Daniel,
hast Du diese Beispiele mal getestet, bevor Du sie hier postest. So viele Fehler in einer Antwort habe ich schon lange nicht erlebt. Es ist richtig, das Namen dem Workbook oder einer einzelnen Tabelle gehören.
Egal wie, wenn nicht das Worksheet aktiv ist, auf dessen Referenz der Name zeigt, dann ist das hier völlig falsch (Tabelle2 ist aktiv):
- Sheets("Tabelle1").Range("Druckbereich").select
- Sheets("Tabelle1").Range(Range("XY").address).select
Da Range (und auch Cells) sich immer auf das gerade aktive Worksheet beziehen, der Name aber auch auf einen Tabellenbereich in einem ganz anderen Worksheet zeigen kann, muß man es so machen:
Range("XY").Parent.Activate
Range("XY").Select
Also erst das richtige Worksheet aktivieren und dann den dazugehörigen Zellbereich. Leider liest man auch in der Excel-Vba-Hilfe solchen falschen Code.
Der Name 'Druckbereich' ist auch kein gutes Beispiel, Excel verwendet diesen Namen intern und für jedes Tabellenblatt gibt es so einen Namen, sobald die Seitenvorschau für die Tabelle mal betätigt oder das Tabellenblatt gedruckt wurde; d.h., dieser Name kann keinem bestimmten Bereich zugeordnet werden und somit ergibt auch das hier einen Vba-Fehler:
Range("Druckbereich").Parent.Select
Range("Druckbereich").Activate
Falls Peter die Frage beantortet wissen wollte, ob man Bereiche aus mehreren Tabellen in 1 Namen definieren kann, so lautet die Antwort: NEIN!
Gruß von Luschi
aus klein-Paris

Anzeige
Zusatz
30.12.2007 22:06:34
Luschi
Wenn der Inhalt eines Namensbereiches verändert werden soll, der zur Arbeitsmappe gehört, dann funktioniert dieser Befehl auch, wenn nicht die richtige Tabelle aktiviert ist:
- Range("xy").Value = "irgendetwas"
Gehört der Name aber zu eine bestimmten Tabelle und eine andere Tabelle ist aktiv, dann kommt auch hier ein Vba-Fehler.
Gruß von Luschi
aus klein-paris

AW: Zugriff auf benannte Zellen
30.12.2007 20:57:00
Josef
Hallo Peter,
meinst du so?
Sub benannteZellen()
Dim rng As Range

Set rng = Range("xy")
rng.Value = "benannte Zelle"
MsgBox rng.Value
End Sub

Gruß Sepp

Anzeige

105 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige