Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1796to1800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Automatisch aktualisieren VBA Code

Automatisch aktualisieren VBA Code
01.12.2020 19:00:17
Gaby
Hallöchen,
nachdem ich heute nach langer Suche genau das gefunden habe, nachdem ich auf der Suche war, bin ich
noch nicht 100%ig glücklich.
Mit diesem Code (siehe unten) sollen die Tabellenblätter nach einer bestimmten Zelle im Blatt benannt werden.
Wenn ich aber nun den Zellennamen ändere, ändert sich der Name des Blattes nicht.
Gibt es hierfür einen Code, den ich ergänzend zu dem unten stehenden hinzufügen kann, um mein Ergebnis zu
optimieren?
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
thx,
Gaby

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

Betreff
Datum
Anwender
Anzeige
AW: Automatisch aktualisieren VBA Code
01.12.2020 19:04:00
Hajo_Zi
Hallo Gaby,
For Each w In Worksheets
with W
.name= .Range("b4")
End With
Next w

AW: Automatisch aktualisieren VBA Code
01.12.2020 19:13:29
Gaby
.. wo muss ich das einfügen, oder muss ich etwas ersetzen?
AW: Automatisch aktualisieren VBA Code
01.12.2020 19:22:23
Hajo:Zi
Habe ich das falsch gesehen das ich Deine For Next schleife kopiert habe und geändert habe.
Ich bin dann raus da Aufgabe wohl falsch verstanden.
Gruß Hajo
AW: Automatisch aktualisieren VBA Code
01.12.2020 19:19:52
Yal
Hallo Gabi,
wenn ich richtig vertehe: Du möchtest, dass wenn der Inhalt von B4 sich ändert, dass das Blatt-Name sich anpasst.
Dein Code ist für das einmalig richten korrekt, aber umständlich. Hajo hat es passend gekürzt.
(@Hajo: da es W gibt, hätte ich auf With verzichtet. Aber Geschmacksache).
Jetzt Ereignisgesteuert:
in der Code-Seite von "Diese Arbeitsmappe" (Doppelklick auf "Diese Arbeitsmappe") folgende Code copy-pasten:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Address = "$B$4" Then Sh.Name = Target.Value
End Sub
Dieses Code sagt: wenn irgendwas in einer Zelle "Target" auf einem Blatt "Sh" sich ändert (=Ereignis)
wird geprüft, ob es sich um die Zelle mit Adresse B4 handelt. Wenn ja, der Name von Sh soll den Wert von B4 (in den Fall Target) annehmen.
Viel Erfolg
Yal
Anzeige

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige