Registriert seit: 11.04.2014
Version(en): Office 2003 - Office 2007 - Office 365
20.03.2020, 12:18
(Dieser Beitrag wurde zuletzt bearbeitet: 20.03.2020, 12:19 von marose67.)
Hallo Günter,
er schrieb aber:
Zitat:so dass z. B. statt "01.03.2020", dann "März 20" angezeigt wird
habe ich auch überlesen. Ich hatte ja den selbigen fehler drin.
Hier mein Code aktualisiert :
Zitat:Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim worksh As Integer
Dim worksheetexists As Boolean
Dim x As Integer
Dim WOrksheetsnam As String
worksh = Application.Sheets.Count
worksheetexists = False
WOrksheetsnam = Format(Range("c2"), "mmm yy")
For x = 1 To worksh
If Worksheets(x).Name = WOrksheetsnam Then
worksheetexists = True
Exit For
End If
Next x
If worksheetexists = False Then
Worksheets.Add after:=Sheets("Tabelle1")
ActiveSheet.Name = WOrksheetsnam
End If
End Sub
Gruß
Marcus
Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
Registriert seit: 19.03.2020
Version(en): 2016
Hallo,
vielen Dank für die Ideen.
Ich sage Euch noch Bescheid, wie welches funktioniert. Ich bin in Moment im HomeOffice und derzeit wird unser Server gewartet und ich komme nicht an die Datei, da der Remote deswegen nicht läuft. Entweder kann ich heute Abend noch rein oder erst am Wochenende oder Montag.
Schönes Wochende
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
@Marcus,
verenn dich bitte nicht. Friedrich hat seine Zelle bereits formatiert:
Zitat:Die Zelle ist formatiert, so dass z. B. statt "01.03.2020", dann "März 20" angezeigt wird.
Mit
Zitat:ActiveSheet.Name = Range("C2").Value
wird das tatsächliche Datum übernommen, mit
.Text das
formatierte Datum. Deshalb reicht auch mein Einzeiler (zu viel mehr wäre ich aufgrund meiner rudimentären VBA-Kenntnissen auch (noch) nicht fähig)
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 11.04.2014
Version(en): Office 2003 - Office 2007 - Office 365
Hallo Günter,
dann habe ich das falsch verstanden. Somit reicht wirklich ein Einzeler.
Liebe Grüße
Marcus
Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Marcus,
(20.03.2020, 12:54)marose67 schrieb: ... Somit reicht wirklich ein Einzeler.
aber eben nur, wenn es noch kein Blatt gleichen Namens gibt. :17:
Gruß Uwe
Registriert seit: 11.04.2014
Version(en): Office 2003 - Office 2007 - Office 365
Danke Uwe ... lag ich doch nicht so verkehrt.
Gruß
Marcus
Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
Registriert seit: 29.09.2015
Version(en): 2030,5
Code:
Private Sub Worksheet_Activate()
If Evaluate("not(isref(" & Format(Date, "'mmm yy") & "'!A1))") Then Name = Format(Date, "mmm yy")
End Sub
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
für die Auswahl der Lösungsvariante ist auch die Formel und die Arbeitsweise relevant.
Wenn dort z.B. eine Formel ohne Bezug auf eine Eingabezelle steht oder die Eingabezelle auf einem anderen Blatt steht, dann wirkt sich das Change-Ereignis dieses Blattes nicht aus.
Wenn z.B. das Blatt aktiv ist und eine Eingabe das Datum ändert, dann geht's mit dem Change aber nicht mit dem Activate-Ereignis des Blattes
Du müsstest bei Günter's Code aus #4 nur die Zelladresse auf die Eingabezelle ändern.
Was steht denn in C2 für ein Formel?
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)