Ich hatte vor ein paar Tagen schon ein ähnliches Problem gepostet, wofür ich hier eine super Lösung erhalten habe.
Es ging darum, die Zellbezüge von vielen Textfeldern zugleich auf ein neues Tabellenblatt zu beziehen.
Dafür wurde dieser Code verwendet:
Sub aaa()
Dim s As Shape, t
Application.ScreenUpdating = False
For Each s In ActiveSheet.Shapes
If s.Type = msoTextBox Then
With s.DrawingObject
If Len(.Formula) Then
t = Split(.Formula, "!")
.Formula = "='Haupttabellenblatt'!" & t(UBound(t))
End If
End With
End If
Next
End Sub
Nun geht es darum, dass ich all diese Textfelder duplizieren muss (Copy and Paste) und sämtliche Zellbezüge für diese um einen bestimmten Betrag verschieben muss (konkret: um eins nach rechts, sprich aus $F$17 mach $G$17), weshalb ich einen neuen Thread dafür eröffnet habe. In diesem speziellen Fall würde es sogar reichen, alle "Fxx" Zellbezüge zu "Gxx" Zellbezügen zu verändern, da sich alle Textfelder auf die F-Spalte beziehen und auf G verschoben werden sollen. Falls es möglich ist, wäre es aber wohl für zukünftige Zwecke und andere Leute, welche diesen Thread entdecken hilfreicher, möglichst allgemein zu halten.Gibt es auch hierfür eine Lösung das für alle Textfelder zu machen?
Freue mich über alle Antworten!
Danke schon im Voraus! :)
LG