Hallo, ich möchte die Beschriftung der Tabellenreiter automatisch realisieren. Dazu habe ich das VBA-Programm gefunden:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = „c2“ Then Exit Sub
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
If ws.Name = Target Then
MsgBox „Dieser Name existiert bereits“
Exit Sub
End If
Next
ActiveSheet.Name = Target
End Sub
Aber der Name wird nur dann in den Reiter von C1 übernommen, wenn man den Namen in der Zelle direkt eingibt.
- Wie muss das Programm lauten, wenn die Zelle C1 einen Formelbezug hat, so dass der Name eigentlich aus einer anderen Zelle eines anderen Tabellenblatt stammt?
2.Da Zelle C1 auch leer sein kann, möchte ich in einer Schleife in das Programm die Abfrage mit der Bedingung einfügen, wenn leer, dann soll das Tabellenblatt „leer“ heißen. Diese Schleife erübrigt sich, wenn 1. möglich ist, denn dann kann ich dort die Abfrage über die Wenn-Funktion absichern.
Leider gehen meine VBA-Kenntnisse gegen Null.
Vielen Dank im vorraus.