Hallo zusammen,
hab mal wieder eine verrückte Frage.
Ich habe eine Arbeitsmappe mit 2 Tabellen.
Die erste heißt AZ1
die 2 Tabelle Leistungsübersicht.
Wie bekomme Ich es hin das der Tabellenname AZ1 auf dem Tabellenblatt Leistungsübersicht in einer Zelle angezeigt wird. Jetzt kommt das für mich verrückte. Wenn Ich AZ1 kopiere und es AZ2 nenne sollte sich dies im Tabellenblatt Leistungübersicht auch ändern.
Habe absolut keinen Plan ob so etwas funktioniert.
Danke an alle im voraus...
Hallo Uwe,
der Code von Stefan funktioniert auch noch tadellos
Habe die Arbeitsmappe jedoch einwenig umbauen müßen. Dergeänderte Code funktioniert ebenfalls tadellos.
Code:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim rngTreffer As Range
If Target.Address = "$A$2" And Left(Me.Name, 2) = "AZ" Then
Me.Copy after:=Worksheets(Me.Index)
ActiveSheet.Name = "AZ" & Format(Val(Mid(Target.Value, 3)) + 1, "00")
ActiveSheet.Range("A2").Value = "AZ" & Format(Mid(Target.Value, 3) + 1, "00")
Set rngTreffer = Me.Columns(2).Find("Auftragssumme", LookIn:=xlValues, lookat:=xlWhole)
Worksheets("Leistungsstand").Range("E16").Resize(2).FormulaR1C1 = "=SUM('" & ActiveSheet.Name & "'!R[" & rngTreffer.Row - 16 & "]C[3])"
Worksheets("Leistungsstand").Range("E20").FormulaR1C1 = "=SUM('" & ActiveSheet.Name & "'!R[" & rngTreffer.Row - 15 & "]C[3])"
End If
Cancel = True
End Sub
Jetzt möchte Ich wie schon erwähnt folgendes ewrweitern:
Im Arbeitsblatt AZ01 steht in Zelle A2 AZ01. Dieses soll im Arbeitsblatt Leistungsstand in Zelle E13 angezeigt werden.
wird durch den Rechtsklick Im Arbeitsblatt AZ01 auf Zelle A2 ein neues Arbeitsblatt AZ02 erzeugt soll dies auch im Arbeitsblatt Leistungsstand geändert werden. Dies wiederhlot sich dann bei jedem neuen Arbeitsblatt.
Wäre dankbar für eure Unterrstützung.
Hallo an alle VBA Profis,
kann mir jemand bei der umsetzung des Problems helfen.
habe den Link von Uwe gelesen, das war damals meine Anfrage an die Profis. Das Problem wurde mit eurer Hilfe gelöst.
Nun da Ich absolut keine Ahnung (kleinigkeiten kann Ich schon ändern) von VBA habe, wäre Ich euch Profis dankbar wenn Ihr mir helfen könntet.
Danke schon mal im Voraus an alle die sich Gedanken darüber machen.
Bis bald.
Hallöchen,
Im Code hast Du die Zeile
ActiveSheet.Range("A2").Value = "AZ" & Format(Mid(Target.Value, 3) + 1, "00")
wenn Du den Code mal mit F8 schrittweise ausführst - dazu vorher eine Zeile als Stopzeile markieren - siehst Du, dass hier der neue Blattname auf dem neuen Blatt eingetragen wird.
Deine Aufgabe ist:
Dieses soll im Arbeitsblatt Leistungsstand in Zelle E13 angezeigt werden.
füge also z.B. danach eine Codezeile ein, die das tut - in etwa so:
Sheets("Leistungsstand").Range("E13").Value = "AZ" & Format(Mid(Target.Value, 3) + 1, "00")
Hallöchen,
Du kannst doch als Start AZ01 fest eintragen. Das wird dann mit jedem neuen Blatt überschrieben.
Oder Du könntest ein Blatt als Vorlage nehmen, z.B. "Vorlage-AZ" und dann mit der Erstellung von AZ01 beginnen.