Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Shapes Gruppieren in bestimmten Bereich (Name gleich)
#1
Grüß Euch,

bräuchte nochmal eure Hilfe. Ich möchte gerne in einem bestimmten Bereich (wichtig, nicht das ganze Tabellenblatt!) mehrere Shapes Gruppieren. Dabei kann es passieren, das die Shapes den identischen Namen haben.

Habt ihr eine Lösung dafür?

Vielen Dank

Abitus


Angehängte Dateien
.xlsb   Shapes_Gruppieren_gleicher_Name.xlsb (Größe: 9,99 KB / Downloads: 18)
Antworten Top
#2
Hallo Abitus,

markiere die Teile bei gedrückter Shifttaste und gruppiere sie anschließend unter Seitenlayout > Gruppieren.

Gruß Uwe
Antworten Top
#3
Servus Uwe,

großer Fehler von mir, das hab ich nicht dazu geschrieben. Ich suche eine VBA Lösung, deshalb auch die Beispielmappe!

Gruß Abitus
Antworten Top
#4
Hallo Abitus,

warum ?

Wenn  ich es mit eindeutigen Namen kann, dann mache ich die Namen eindeutig.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#5
Hallo Helmut,

gibt es eine Möglichkeit, mehrere Shapes mit dem gleichen Namen zu Selektieren?

Gruß Abi
Antworten Top
#6
Hallo Abitus,

kenn ich nicht. Warum machst du die Namen nich eindeutig?
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#7
Hallo Helmut,

ich gebe dir natürlich recht, das ist wohl die einfachste Lösung. Nur war das meinem Kollegen nicht ganz so klar.

Gruß Dirk
Antworten Top
#8
Hallo Dirk,

Du müsstest jetzt nur noch eine konkrete Frage stellen, denn Deine "Beispieldatei" gibt ja nicht viel her. Wink

Gruß Uwe
Antworten Top
#9
Servus Uwe,

ich möchte gerne im Bereich von E12:O47 alles Shapes, die in diesem Bereich sind, per VBA Gruppieren. Dabei ist zu beachten, das die Shapes auch teilweise den gleichen Namen besitzen.

Ist das überhaupt möglich?

Gruß Dirk
Antworten Top
#10
Hallo Dirk,

teste es mal damit:

Sub GrafikenImBereichGruppieren()
 Dim lngA() As Long
 Dim lngI As Long
 Dim rngB As Range
 ReDim lngA(0 To 0)
 
 With ActiveSheet
   Set rngB = .Range("E12:O47")
   For lngI = 1 To .Shapes.Count
     If .Shapes(lngI).Top >= rngB.Top Then
       If .Shapes(lngI).Left >= rngB.Left Then
         If .Shapes(lngI).Top + .Shapes(lngI).Height <= rngB.Top + rngB.Height Then
           If .Shapes(lngI).Left + .Shapes(lngI).Width <= rngB.Left + rngB.Width Then
             If LBound(lngA) = 0 Then
               ReDim lngA(1 To 1)
             Else
               ReDim Preserve lngA(1 To UBound(lngA) + 1)
             End If
             lngA(UBound(lngA)) = lngI
           End If
         End If
       End If
     End If
   Next lngI
   If UBound(lngA) > 1 Then
     .Shapes.Range(lngA).Group
     MsgBox UBound(lngA) & " Objekte wurden gruppiert."
   Else
     If UBound(lngA) = 1 Then
       MsgBox "Es wurde nur ein Objekt gefunden."
     Else
       MsgBox "Es wurde kein Objekt gefunden."
     End If
   End If
 End With
End Sub

Code eingefügt mit: Excel Code Jeanie

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Abitus
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste