PDA

Vollständige Version anzeigen : Tabellennamen umbennenen per Makro sperren


philipp87
06.05.2009, 15:17
Hallo zusammen,

ich hab folgendes Problem:

Meine Tabellennamen die ich in der Datei verwende, sind fast alle an Makros gebunden. Jetzt möchte ich per Makro eine Sperre einrichten, welche das Umbennenen von Tabellennamen verhindert.

Gibt es sowas?

Danke im Voraus

NoNet
06.05.2009, 15:29
Hey,

mit folgender Codezeile verhindert man das Löschen, Hinzufügen, Umbenennen, Kopieren, Verschieben von Tabellenblättern der aktuellen Mappe :

ActiveWorkbook.Protect password:="Geheim", structure:=True

IngGi
06.05.2009, 15:35
Hallo Philipp,

du kannst das Umbenennen per Arbeitsmappenschutz verhindern - Extras | Schutz | Arbeitsmappe schützen .... Dann ist es aber auch nicht mehr möglich, neue Tabellenblätter anzulegen, Tabellenblätter zu verschieben oder zu löschen, respektive muss dazu der Schutz vorher aufgehoben werden.

Besser wäre es, das Problem bei der Wurzel zu packen. Tabellenblätter haben zwei Namen. Den normalen Excelnamen und den Codenamen. Im Projektexplorer des VBA-Editors ist bei den Klassenmodulen der Tabellenblätter jeweils der Codename und dahinter in Klammern der normale Excelname angegeben.

Wenn du in deinen VBA-Prozeduren Codenamen verwendest, ist es egal, wenn der normale Name geändert wird. Den Codenamen verwendet man in VBA-Prozeduren wie eine Objektvariable. Also statt so:
Worksheets("Excelname").Copy
so:
Codename.Copy

Gruß Ingolf

philipp87
07.05.2009, 08:11
Vielen Dank für eure Hilfe