Tipps & Tricks
17.02.2004, 12:45 Uhr
Tabellenblätter nach Zellinhalt benennen
Gibt in Excel es eine Funktion oder eventuell einen VBA-Makrobefehl (Makro aufzeichnen gelang mir nicht!), die/der es ermöglicht, einen Bezug von einer Zelle auf das Arbeisblattregister herzustellen? Konkret: ich ordne in einer EXCEL-Arbeitsmappe mit ca. 140 Arbeitsblätter die einzelnen Blätter einer bestimmten Person zu (eine Zelle, z.B. B4 = enthält den Namen der Person). Nun möchte ich gerne, dass das Arbeitsblattregister den entsprechenden Eintrag (= Namen in B4) übernimmt, so dass ich in der Mappe die Übersicht über die Arbeitsblätter habe und gezielt blättern kann. Ich kann zwar alle Arbeitsblätter nacheinander umbenennen, was aber relativ aufwändig und wenig geistreich ist!
Die Ausgangslage sieht folgendermassen aus:
Sie haben mehrere Tabellen, denen Sie den Namen zuweisen möchten, der jeweils in der Zelle B4 steht. Dafür benötigen Sie folgendes Makro, dass die gesamte Arbeitsmappe durchläuft:
Einen Fehler, zum Beispiel wenn die Zelle B4 leer ist oder bereits ein Blatt mit dem selben Namen besteht, wird das Makro einfach übergehen, und den Namen dieses Blattes nicht ändern. Sie können das Makro also auch ausführen, wenn Sie nur den Namen eines einzelnen Blattes geändert haben.
------------------------------------------
MAKRO ZUM KOPIEREN:
Sub Namen_anpassen_alle()
Sheets(1).Select
B = ActiveSheet.Index
For Each w In Worksheets
Sheets(B).Activate
n = [b4].Value
On Error Resume Next
w.Name = n
B = B + 1
Next w
Sheets(1).Select
End Sub
-------------------------------------------
20.08.2007
20.08.2007