Discussion:
Wie den Namen einer Tabelle per VBA ändern?
(zu alt für eine Antwort)
Mueller Michael
2005-07-15 04:58:30 UTC
Permalink
Hi.

In den Eigenschaften eines Tabellenblattes im VBA-Editor gibt es ja (Name)
und Name.
Wenn ich nun ein neues Tabellenblatt per VBA mit Sheets.Add erzeuge, kann
ich ihm ja mit ActiveSheet.Name einen neuen Namen geben. Aber ist es möglich
während der Laufzeit auch (Name) zu ändern? Hier steht dann immer z.B.
Tabelle11. Dort hätte ich gerne einen eigenen Bezeichner drin.

Danke
Michi
Reiner Wolff
2005-07-15 05:23:52 UTC
Permalink
Moin Michael,
Post by Mueller Michael
In den Eigenschaften eines Tabellenblattes im VBA-Editor gibt es ja (Name)
und Name.
Wenn ich nun ein neues Tabellenblatt per VBA mit Sheets.Add erzeuge, kann
ich ihm ja mit ActiveSheet.Name einen neuen Namen geben.
Auf ActiveSheet solltest Du normaler Weise besser verzichten und direkt mit
dem jeweilig erzeugten Objekt arbeiten oder mit einer Objektvariablen
Dim ws As Excel.Worksheet
Set ws = Sheets.Add
'Name des Tabellenblattes ändern
ws.Name = "MichisBlatt"
'CodeName ändern
ws.VBProject.VBComponents(ws.CodeName).name = "MichisBlatt"
Post by Mueller Michael
Aber ist es möglich
während der Laufzeit auch (Name) zu ändern? Hier steht dann immer z.B.
Tabelle11. Dort hätte ich gerne einen eigenen Bezeichner drin.
Ich hoffe, das Codebeispiel hilft Dir so weiter.
Diese Lösung habe ich übrigens durch Benutzung on Google-Groups gefunden.

Greetinx aus Kiel
Reiner
--
selbst erlebt: "Ich speichere nicht auf der Festplatte,
ich speichere meine Sachen in Word."
Mueller Michael
2005-07-15 05:28:26 UTC
Permalink
Hi Reiner.
Post by Reiner Wolff
'CodeName ändern
ws.VBProject.VBComponents(ws.CodeName).name = "MichisBlatt"
Ich hoffe, das Codebeispiel hilft Dir so weiter.
Jawohl, hat gleich auf Anhieb funktioniert.
Post by Reiner Wolff
Diese Lösung habe ich übrigens durch Benutzung on
Google-Groups gefunden.
Habe leider hier keinen Internet-Zugang, sonst wäre Google meine erste
Anlaufstelle gewesen. Dennoch Danke für Deine Hilfe.

Gruß
Michi
Eberhard Funke
2005-07-15 08:25:20 UTC
Permalink
Post by Mueller Michael
Hi.
In den Eigenschaften eines Tabellenblattes im VBA-Editor gibt es ja (Name)
und Name.
Wenn ich nun ein neues Tabellenblatt per VBA mit Sheets.Add erzeuge, kann
ich ihm ja mit ActiveSheet.Name einen neuen Namen geben. Aber ist es möglich
während der Laufzeit auch (Name) zu ändern? Hier steht dann immer z.B.
Tabelle11. Dort hätte ich gerne einen eigenen Bezeichner drin.
Danke
Michi
Hallo Michi,

Du könntest doch gleich mit der Erstellung eines neuen Worksheets den Namen
vergeben:
Worksheets.Add.Name = "X"
--
Gruß Eberhard
XL 2000
Eberhard(punkt)Funke(at)t-online.de
Reiner Wolff
2005-07-15 17:12:38 UTC
Permalink
Moin Eberhard,
Post by Eberhard Funke
Du könntest doch gleich mit der Erstellung eines neuen Worksheets den Namen
Worksheets.Add.Name = "X"
Damit stellst Du "lediglich" den Namen im Register ein, der Name
(CodeName-Eigenschaft), der Dir im VBA-Editor angezeigt wird, ist aber dann
"Tabelle2 (X)".

Greetinx aus Kiel
Reiner
--
"Künstliche Intelligenz ist das Perpetuum Mobile der Informatik"
Eberhard Funke
2005-07-15 18:33:55 UTC
Permalink
Post by Reiner Wolff
Moin Eberhard,
Post by Eberhard Funke
Du könntest doch gleich mit der Erstellung eines neuen Worksheets den Namen
Worksheets.Add.Name = "X"
Damit stellst Du "lediglich" den Namen im Register ein, der Name
(CodeName-Eigenschaft), der Dir im VBA-Editor angezeigt wird, ist aber dann
"Tabelle2 (X)".
Greetinx aus Kiel
Reiner
Hallo Reiner,

danke, wäre auch zu einfach gewesen. ;-)
--
Gruß Eberhard
XL 2000
Eberhard(punkt)Funke(at)t-online.de
Loading...