Hallo @sergej.gelfrich,
ursprünglich war folgendes gewünscht:
wenn nicht die Hauptansicht bei den Detailgenauigkeiten aktiv war, dann wurde von dem Namen der Detailgenauigkeit (bei dir z.B. "Kette_oben2") das letzte Zeichen genommen und an das Wort "Position" gehängt.
In diesem Fall wäre es dann "Position2".
Dann wurden alle Positionen nach einer Position mit dem Namen "Position2" durchsucht und wenn eine solche gefunden wurde, wurde sie auch aktiviert.
Wenn du allerdings in der Hauptansicht bist passiert nichts und nach dem du keine Position mit dem Namen z.B. "Position2" hast, würde da auch nichts passieren.
Den Fehler verstehe ich allerdings gerade selber nicht ganz.
Versuch mal bitte folgendes:
Dim oRepMan As RepresentationsManager
oRepMan = ThisApplication.ActiveDocument.ComponentDefinition.RepresentationsManager
Dim i As String
If oRepMan.ActiveLevelOfDetailRepresentation.Name <> "Hauptansicht" Then
i = Right$(oRepMan.ActiveLevelOfDetailRepresentation.Name,1)
Position = "Position" & i
For Each Item In oRepMan.PositionalRepresentations
If Item.Name = Position Then
Item.Activate
End If
Next
End If
Und benenne die Positionen folgendermaßen um:

Schalte dann auf die Detailgenauigkeit "Name1" und führe die Regel aus -> dann sollte die Position "Position1" aktiviert werden.
Schaltest du auf die Detailgenauigkeit "Kette_oben2" und führst die Regel aus -> wird die Position "Position2" aktiviert.
Viele Grüße,
Aleks
Aleksandar Krstic
Produkt- und Projektmanager

