Tabellenblätter mit VBA umbenennen?

1 Antwort

Hallo oxmoks,

die einfachste Möglichkeit wäre, die Namen von Hand zu ändern. Es sei denn, Du hast öfters dieses "Problem".

Ein Fehler besteht darin, dass Du <alterName = Range("K1")> ohne den Worksheetnamen auslesen möchtest. Ist aber das Worksheet, in dem die Namen stehen wirklich das aktive Worksheet? Zudem ist die Schleife unnötig (außerdem ist die Schleife fehlerhaft!).

Hier eine einfachere Lösung:

Die alten und neuen Namen schrieb ich in die Tabelle <Namenstabelle>

Bild zum Beitrag

Der Code:

Sub test()

Dim alterName1 As String

Dim alterName2 As String

Dim neuerName1 As String

Dim neuerName2 As String

Dim Zwischenname1 As String

Dim Zwischenname2 As String

alterName1 = Worksheets("Namenstabelle").Range("A2").Value

alterName2 = Worksheets("Namenstabelle").Range("A3").Value

neuerName1 = Worksheets("Namenstabelle").Range("B2").Value

neuerName2 = Worksheets("Namenstabelle").Range("B3").Value

Zwischenname1 = "x"

Zwischenname2 = "y"

Worksheets(alterName1).Name = Zwischenname1

Worksheets(alterName2).Name = Zwischenname2

Worksheets(Zwischenname1).Name = neuerName1

Worksheets(Zwischenname2).Name = neuerName2

End Sub

Woher ich das weiß:eigene Erfahrung
 - (Computer, VBA, Tabellenblätter umbenennen)