Thema Datum  Von Nutzer Rating
Antwort
09.04.2024 22:24:53 Bosse
NotSolved
10.04.2024 00:00:09 xlKing
NotSolved
10.04.2024 08:11:27 Bosse
NotSolved
10.04.2024 19:11:35 ralf_b
NotSolved
Rot Aktueller Zellwert und neuer Zellwert in Variable speichern und Blatt umbenennen
10.04.2024 19:47:39 xlKing
NotSolved
10.04.2024 19:49:22 xlKing
NotSolved
11.04.2024 12:09:19 Trägheit
NotSolved
23.04.2024 22:04:51 Nobody
NotSolved

Ansicht des Beitrags:
Von:
xlKing
Datum:
10.04.2024 19:47:39
Views:
216
Rating: Antwort:
  Ja
Thema:
Aktueller Zellwert und neuer Zellwert in Variable speichern und Blatt umbenennen

Hi Bosse,

in meinem Code werden nur dann Blätter angefügt, wenn die Anzahl an Zellen im Bereich mit den Tabellennamen die Anzahl an Blättern übersteigt. Alles andere würde auch keinen Sinn ergeben. Wie willst du sonst nicht vorhandenen Tabellen umbenennen?

Aber OK, du wählst offenbar einen anderen Ansatz. Eine Frage hierzu: wenn du das Tabellenblatt manuell aufrufst, warum änderst du dann nicht gleich den Namen des Tabellenblatts auf üblichem Weg? Wozu der Umweg über die Zellen?

Dein Knackpunkt ist leicht zu lösen. Du brauchst nur ein Worksheets("Tabelle1") vor den übergebenenen Range machen. Dann greift er immer auf die Daten aus Tabelle1 zu, egal in welchem Blatt du dich befindest.

z.B. WorkSheets("Tabelle3").Name = WorkSheets("Tabelle1").Range("A3").Value

Es gibt viele Wege das zu erreichen was du willst. Vom folgende Code würde ich eher abraten, weil zu umständlich. Er soll dir nur zeigen wie du die Daten speichern kannst. Der Code würde deiner Beschreibung entsprechen und käme in das Modul "DieseArbeitsmappe".

Dim Blattname As String

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
  If Sh.Name <> "Tabelle1" Then Blattname = Sh.Name
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  On Error Resume Next
  If Sh.Name = "Tabelle1" Then
    Sheets(Blattname).Name = Target.Cells(1).Value
    Blattname = ""
  End If
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
  Blattname = Target.Cells(1).Value
End Sub

Wenn du nun ein Blatt (außer Tabelle1) aufrust, zu Tabelle1 zurück springst und den Wert in A3 änderst, wird das zuletzt aufgerufene Blatt umbenannt. Bleibst hingegen in Tabelle1, wechselst die Zelle und springst in A3 zurück, wird der Name, der bereits in der Zelle steht gespeichert und das entsprechende Blatt durch den neu eingetragenen Wert umbenannt. Kommt es zu einem Fehler, z.B. weil der neue Name bereits existiert oder ungültige Zeichen enthält, so passiert einfach gar nichts. Dafür sorgt der On Error-Befehl.

Doch wie gesagt empfehle ich vielmehr entweder die üblichen Umbenennungsweg einzuhalten oder über die Position des Blattes zu gehen.

Gruß Mr. K.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
09.04.2024 22:24:53 Bosse
NotSolved
10.04.2024 00:00:09 xlKing
NotSolved
10.04.2024 08:11:27 Bosse
NotSolved
10.04.2024 19:11:35 ralf_b
NotSolved
Rot Aktueller Zellwert und neuer Zellwert in Variable speichern und Blatt umbenennen
10.04.2024 19:47:39 xlKing
NotSolved
10.04.2024 19:49:22 xlKing
NotSolved
11.04.2024 12:09:19 Trägheit
NotSolved
23.04.2024 22:04:51 Nobody
NotSolved