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

Bereichsnamen mit VBA ändern

Bereichsnamen mit VBA ändern
29.03.2022 12:28:14
Florian
Hi Leute,
ich versuche mit folgendem Code einen Bereichsnamen zu ändern. Allerdings wird der Name nicht geändert, sondern ich habe dann auf der gleichen Zelle den alten und neuen Namen im Namensmanager.

Sub PersonalkostenUmbenennen()
Dim wksStammdaten As Worksheet
Set wksStammdaten = ActiveWorkbook.Sheets("Stammdaten")
wksStammdaten.Range("Personalkosten").Name = "Personalaufwand"
End Sub
Userbild
Wenn ich es dann so versuche den alten Namen zu löschen erhalten ich auf der "Delete-Zeile" einen Fehler 1004, wie wenn er den Namen nicht findet.

Sub PersonalkostenUmbenennen()
Dim wksStammdaten As Worksheet
Set wksStammdaten = ActiveWorkbook.Sheets("Stammdaten")
wksStammdaten.Range("Personalkosten").Name = "Personalaufwand"
wksStammdaten.Names("Personalkosten").Delete
End Sub
Weiss jemand Rat?
Danke Euch!! :)

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bereichsnamen mit VBA ändern
29.03.2022 12:39:03
MCO
Hallo Florian!
Wenn du den Bereich umbenennst, dann existiert der alte Name nicht mehr. Da gibt´s nix mehr zu löschen.
Anderer Weg
Geh von der anderen Seite ran u. lass dir die Namen auflisten und benenne sie direkt um.

Sub Name_change()
For Each nm In ActiveWorkbook.Names
Debug.Print nm, nm.Name
nm.Name = "Günther"
Next nm
End Sub
Gruß, MCO
AW: Bereichsnamen mit VBA ändern
29.03.2022 13:46:24
Florian
Dachte ich auch, aber wieso steht der alte Name dann noch im Namensmanager neben dem neuen?
Mit Deinem Code würde ich dann alle Namen ändern, oder? Ich will aber nur diesen einen "Personalkosten" ändern.
Anzeige
AW: Bereichsnamen mit VBA ändern
30.03.2022 06:53:18
MCO
Da baust du dann halt eine IF-Bedingung ein:
if Name ="Gerd" then Name = "Günther"
Gruß, MCO
AW: Bereichsnamen mit VBA ändern
29.03.2022 12:39:49
ChrisL
Hi Florian
So wie du es definiert hast, bezieht sich der Name auf die ganze Arbeitsmappe.

ThisWorkbook.Names("Personalkosten").Name = "Personalaufwand"
cu
Chris
AW: Bereichsnamen mit VBA ändern
29.03.2022 13:47:45
Florian
Was meinst Du mit gesamte Arbeitsmappe?
Da ich den Code in einem Addin speichere muss ich mit ActivEworkbook arbeiten, da er nur in der aktiven Arbeitsmappe laufen soll, in der ich auf den BUtton drücke.
Oder habe ich einen Denkfehler?
AW: Bereichsnamen mit VBA ändern
29.03.2022 14:01:40
ChrisL
Hi
Ich meine diese Einstellung:
Userbild
War nur die Erklärung, warum du auf die Mappe und nicht auf das Tabellenblatt referenzieren solltest.
cu
Chris
Anzeige
AW: Bereichsnamen mit VBA ändern
29.03.2022 13:45:06
UweD
HAllo
Es reicht : ActiveWorkbook.Names("Personalkosten").Name = "Personalaufwand"
ohne die Blattangabe
LG UweD
AW: Bereichsnamen mit VBA ändern
29.03.2022 13:48:42
Florian
Aber wieso sehe ich nach der Änderung den alten und neuen im Namensmanager? Der alte müsste doch dann weg sein, oder nicht
AW: Bereichsnamen mit VBA ändern
29.03.2022 13:56:52
Daniel
Achte auf den Unterschied:
Damit legst du einen neuen Namen für den angegeben Zellbereich fest (man kann den selben Zellbereich für mehrere Namen verwenden)
ActiveSheet.Range("Personalkosten").Name = "Personalaufwand"
Damit änderst du den Namen(Bezeichnung) eines Namens (benannter Zellbereich)
ActiveWorkbook.Names("Personalkosten").Name = "Personalaufwand"
Gruß Daniel
Anzeige
AW: Bereichsnamen mit VBA ändern
29.03.2022 14:13:45
Florian
Perfekt, läuft :)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige