Sub Main() Dim oAsmDoc As AssemblyDocument = ThisApplication.ActiveDocument myparam = InputBox("Zadejte část názvu komponenty", "Viditelnost komponent", "") myBooleanParam = InputRadioBox("Videlnost", "Vypnout", "Zapnout", booleanParam, Title := "Stav viditelnosti komponent") Call TraverseAssembly(oAsmDoc.ComponentDefinition.Occurrences, 1, myparam, myBooleanParam) End Sub Private Sub TraverseAssembly(Occurrences As ComponentOccurrences,Level As Integer, myOccName As String, booleanParam As Boolean) Dim oOcc As ComponentOccurrence For Each oOcc In Occurrences If oOcc.Name.Contains(myOccName) Then If booleanParam = True Then oOcc.Visible = False Else oOcc.Visible = True End If End If If oOcc.DefinitionDocumentType = kAssemblyDocumentObject Then Call TraverseAssembly(oOcc.SubOccurrences, Level + 1, myOccName, booleanParam) End If Next End Sub