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

Forumthread: Sheet Eigenschaften (Name) mit VBA ändern

Sheet Eigenschaften (Name) mit VBA ändern
02.08.2005 15:57:33
Martin
Hallo Zusammen
ist es überhaubt möglich mit VBA den Tabellennamen in den Eigenschaften zu bezeichnen?
Mit Tabellennamen meine ich die Eigenschaft wo (Name) in Klammern steht.
ThisWorkbook.Sheets(1).Name = "xxxyyyzzz" ist nicht das was ich meine!
Das Problem welches ich damit zu lösen versuche ist das folgende:
Die Tabelle xxxyyyzzz solte immer den Index "tabelle1" im Eigenschaftenfeld (Name) haben.
Besten Dank und Gruss
Martin
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Sheet Eigenschaften (Name) mit VBA ändern
02.08.2005 16:02:42
Hajo_Zi
Hallo Martin,
das ist Codename und den glaube ich kann man nicht ändern.
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.


Anzeige
Sheet (CodeName) mit VBA ändern
02.08.2005 16:08:39
Martin
Hallo Hajo
die Änderung ist manuell über den VBA Editor möglich, da dachte ich das muss doch auch mit VBA gehen. Aber da stehe ich nun mit meiner Aufgabe am Berg.
Aber Danke für die Hilfe.
Gruss
Martin
AW: Sheet (CodeName) mit VBA ändern
02.08.2005 16:14:15
Leo
Hi,
das Forum hat eine Recherche, für dich gesucht und gefunden:
'---------------------------------------------------------------
Hallo,
das geht, du musst das Teil nur als VB- Komponente ansprechen.

Sub CodeName()
ThisWorkbook.VBProject.VBComponents("Tabelle1").Properties(5).Value = "KRola"
End Sub

Allerdings macht das wenig Sinn, weil es nur bei ungeschütztem VBA- Projekt
funktioniert.
Gruß K.Rola
'----------------------------------------------------------------------------
mfg Leo
Anzeige
AW: Sheet (CodeName) mit VBA ändern
02.08.2005 16:25:40
Martin
Hallo Leo
Danke für Deine Hilfe.
Das ist genau das was ich eben auch im Forum mit Recherche gefunden habe, aber dazu musste ich noch wissen wie das Ding denn lautet. Aber da hat mir wieder eimal Hajo weiterhelfen können.
Aber Danke trotzdem Euch beiden.
Bis auf ein andermal
Martin
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Sheet Eigenschaften (Name) mit VBA ändern


Schritt-für-Schritt-Anleitung

Um den Namen eines Excel-Arbeitsblatts mit VBA zu ändern, kannst Du die folgenden Schritte befolgen:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11 in Excel, um den VBA-Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf VBAProject (DeineDatei.xlsx) > Einfügen > Modul.
  3. Schreibe den VBA-Code:

    • Kopiere den folgenden Code in das Modul:
      Sub SheetNameChange()
      ThisWorkbook.Worksheets("Tabelle1").Name = "NeuerName"
      End Sub
    • Ersetze "NeuerName" mit dem gewünschten Namen.
  4. Führe den Code aus:

    • Klicke auf Run (oder drücke F5), um das Skript auszuführen.
  5. Überprüfe den neuen Namen:

    • Wechsle zurück zu Excel und überprüfe, ob der Name des Arbeitsblatts erfolgreich geändert wurde.

Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 1004":

    • Ursache: Der Arbeitsblattname ist bereits vorhanden.
    • Lösung: Wähle einen einzigartigen Namen für das Arbeitsblatt.
  • Fehler: "Das Arbeitsblatt konnte nicht gefunden werden":

    • Ursache: Der Name des Arbeitsblatts wurde falsch eingegeben.
    • Lösung: Überprüfe die Schreibweise des Arbeitsblattnamens.
  • Fehler: "Das VBA-Projekt ist geschützt":

    • Ursache: Das VBA-Projekt ist mit einem Passwort geschützt.
    • Lösung: Entferne den Schutz des Projekts, um den Code auszuführen.

Alternative Methoden

Wenn Du den Arbeitsblattnamen nicht über VBA ändern möchtest, kannst Du folgendes tun:

  • Manuelle Änderung:

    • Klicke mit der rechten Maustaste auf den Tab des Arbeitsblatts und wähle Umbenennen.
  • Über die Eigenschaften:

    • Wähle das Arbeitsblatt aus, gehe zu den Eigenschaften und ändere den Name-Wert dort.

Praktische Beispiele

Hier sind einige Beispiele, wie man den Namen eines Arbeitsblatts mit VBA ändern kann:

Sub RenameSheet()
    ' Ändert den Namen des ersten Arbeitsblatts
    ThisWorkbook.Sheets(1).Name = "Erstes Blatt"

    ' Ändert den Namen eines bestimmten Arbeitsblatts
    ThisWorkbook.Worksheets("Tabelle2").Name = "Zweites Blatt"
End Sub

Wenn Du den CodeName eines Arbeitsblatts ändern möchtest, kannst Du den folgenden Code verwenden:

Sub ChangeCodeName()
    ThisWorkbook.VBProject.VBComponents("Tabelle1").Properties(5).Value = "NeuerCodeName"
End Sub

Beachte, dass dieser Code nur bei ungeschützten VBA-Projekten funktioniert.


Tipps für Profis

  • Verwende Variablen: Anstatt den Namen direkt im Code zu schreiben, könntest Du den neuen Namen in einer Variablen speichern:

    Dim neuerName As String
    neuerName = "MeinNeuerName"
    ThisWorkbook.Worksheets("Tabelle1").Name = neuerName
  • Fehlerbehandlung: Füge Fehlerbehandlung hinzu, um unerwartete Probleme zu vermeiden:

    On Error Resume Next
    ThisWorkbook.Worksheets("Tabelle1").Name = "NeuerName"
    If Err.Number <> 0 Then
      MsgBox "Ein Fehler ist aufgetreten: " & Err.Description
    End If
    On Error GoTo 0

FAQ: Häufige Fragen

1. Kann ich den Namen eines Arbeitsblatts auch in einer Schleife ändern? Ja, Du kannst eine Schleife verwenden, um mehrere Arbeitsblätter nacheinander umzubenennen.

2. Was ist der Unterschied zwischen dem Tabellennamen und dem CodeName? Der Tabellennamen ist der Name, der im Excel-Interface angezeigt wird, während der CodeName im VBA-Editor verwendet wird und nicht geändert werden kann, es sei denn, Du tust dies manuell im VBA-Editor.

3. Funktioniert dieser Code in allen Excel-Versionen? Die Beispiele hier sollten in den meisten modernen Excel-Versionen funktionieren, insbesondere ab Excel 2003.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige