ich möchte eine Schleife über alle Grafikobjekte laufen lassen, deren Name mit "Str" anfängt - bzw. eine weitere Eigenschaft der "Str"-Objekte ist, dass diese alle vom Typ Connector sind, das wäre auch ein mögliches Kriterium für eine Schleife. Kann ich den Code, den ich bisher dazu verwende (s.u.), irgendwie beschleunigen? Ich möchte nicht unbedingt immer erst jedes einzelne Objekt "angucken" müssen (per Code) und auf "Str" testen.
For Each Thisshape In Worksheets(1).Shapes
thistext = Thisshape.Name
If Left(thistext, 3) = "Str" Then
...
end if
next
Ein weiterer Fall ist eine Schleife über alle ggf. selektierten Grafiken (ohne Selektion soll Schleife über ALLE gehen), wenn ich dort
For Each Thisshape In Selection.ShapeRange
benutze, bekomme ich bei fehlender Selektion eine Fehlermeldung. Daher nutze ich
On Error Resume Next
iShapeCt = Selection.ShapeRange.count
If Err Then 'Nix selektiert
For Each Thisshape In ActiveSheet.Shapes
...
Next
else 'selektiert
For Each Thisshape In Selection.ShapeRange
...
Next
end if
was ich auch ziemlich unschön finde. Gibt es hier vielleicht auch etwas eleganteres?
Danke für Tipps und viele Grüße aus Kölle
Marko