Zellbezüge von Textfeld bei Verschieben behalten

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
TextBox
Bild

Betrifft: Zellbezüge von Textfeld bei Verschieben behalten
von: Simon Privat
Geschrieben am: 30.10.2015 11:06:42

Hey,
ich habe folgendes Problem:
Ich habe einige Gruppierungen auf einem Tabellenblatt, welche jeweils aus einer Grafik und darauf platzierten Textfeldern bestehen. Diese Textfelder haben Zellverweise (z.B. =$F$17).
Nun möchte ich die gesamten Gruppierungen auf ein anderes im Hintergrund verstecktes Tabellenblatt verschieben (über ein Makro greife ich dann nur auf die jeweils benötigte Gruppierung zu und hole diese in mein Hauptblatt).
Wenn ich die Gruppierung allerdings einfach über ausschneiden und einfügen auf ein anderes Tabellenblatt platziere, ist der Zellbezug falsch, da dieser z.B. =$F$17 bleibt, eigentlich aber ='Haupttabellenblatt'$F$17 sein müsste. Der Bezug sollte sich also auf das ursprüngliche Tabellenblatt beziehen.
Da jede Gruppierung sehr viele Textfelder mit Bezügen besitzt, ist es zu aufwendig diese nach verschieben der Grafik manuell zu ändern. Gibt es hier eine Möglichkeit, den Bezug bei Verschieben der Grafik auf exakt der gleichen Zelle (also dem ursprünglichen Tabellenblatt) zu halten?
Wenn nein, kann ich durch einen einfachen Code alle diese Bezüge nach verschieben der Gruppierungen durch 'Haupttabellenblatt' ergänzen?
Hoffe das ist verständlich.
Danke!
LG :)

Bild

Betrifft: AW: z.B. mit der Funktion Suchen und Ersetzen ...
von: ... neopa C
Geschrieben am: 30.10.2015 11:29:36
Hallo Simon,
... zunächst für Suchen in den betreffenden Formelbereichen nach: = und Ersetze dies z.B. mit: !=
Anschließend Suchen in den betreffenden Formelbereichen nach: != und Ersetze dies mit ='Haupttabellenblatt'!
Gruß Werner
.. , - ...

Bild

Betrifft: AW: z.B. mit der Funktion Suchen und Ersetzen ...
von: Simon Privat
Geschrieben am: 30.10.2015 12:24:04
Hallo Werner,
Danke für die schnelle Antwort :)
Die Idee ist super, komischerweise wenn ich nach = suche, findet er nur die in den Zellen, jedoch nicht die in den Textfeldern. Wenn ich also in einer Zelle "=F17" stehen habe, so gibt er mir das unter der Suche aus.
Jedoch ist mein = im Zellbezug eines Texfeldes, welches die Suchfunktion nicht zu finden scheint, oder mache ich was falsch?
Danke schon mal :)
LG

Bild

Betrifft: AW: für Textfelder geht es wohl nur per VBA owT
von: ... neopa C
Geschrieben am: 30.10.2015 12:31:27
Gruß Werner
.. , - ...

Bild

Betrifft: Zellbezüge von Textfeld bei Verschieben behalten
von: Rudi Maintaire
Geschrieben am: 30.10.2015 12:50:22
Hallo,
Gibt es hier eine Möglichkeit, den Bezug bei Verschieben der Grafik auf exakt der gleichen Zelle (also dem ursprünglichen Tabellenblatt) zu halten?
Nein.
Wenn nein, kann ich durch einen einfachen Code alle diese Bezüge nach verschieben der Gruppierungen durch 'Haupttabellenblatt' ergänzen?
Ja.

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
Gruß
Rudi

Bild

Betrifft: Textfelder werden nicht als solche erkannt
von: Simon Privat
Geschrieben am: 02.11.2015 10:11:57
Hey Rudi,
danke für deine Antwort.
Leider funktioniert es nicht.
Er scheint den Typ des Textfeldes nicht entsprechend zu erkennen, da das Programm im Debugging immer die If s.Type = msoTextBox Then Schleife überspringt.
Wenn ich in einem anderen Tabellenblatt eine Textbox einfüge und das Makro dort verwende funktioniert es.
Die shapes scheinen, wenn sie angewählt sind, jedoch eindeutig Textfelder mit Bezug zu sein.
Kann ich irgendwie eindeutig herausfinden, welchem Typ ein Shape angehört?
Oder kann es daran liegen, dass die Textfelder Teil einer Gruppierung sind?
Freue mich über Ideen!
Danke :)

Bild

Betrifft: Problem gelöst!
von: Simon Privat
Geschrieben am: 02.11.2015 10:31:45
Problem gelöst!
Es hat tatsächlich an den Gruppierungen gelegen. Ich habe also alle Gruppierungen entfernt, die Bezüge aktualisiert und dann neue Gruppierungen erstellt!
Tausend Dank an alle! Perfekt :)

Bild

Betrifft: Zellbezüge von Textfeld verändern
von: Simon Privat
Geschrieben am: 02.11.2015 12:58:23
Hey,
ich nochmal.
Jetzt hat sich ein neues Problem aufgetan, was wahrscheinlich ähnlich zu lösen sein könnte?
Die Gruppierungen (Grafik + Textfelder mit Referenz) sollen nun ein zweites mal angezeigt werden, jedoch sollen andere Werte in die Felder eingetragen werden.
Im Endeffekt sollen die Zellbezüge alle "um 1 Feld nach rechts" verändert werden.
Was also vorher auf $F$17 bezogen war, soll jetzt $G$17 werden.
Wie könnte man sowas lösen?
Danke im voraus! :)

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zellbezüge von Textfeld bei Verschieben behalten"