'Code by @ClintCadline originally posted here: 'https://www.cadlinecommunity.co.uk/hc/en-us/articles/115005839505 'Create Array & Input list box Dim MyArrayList As New ArrayList MyArrayList.Add("Mesh On") MyArrayList.Add("Mesh Off") MyArrayList.Add("Surfaces On") MyArrayList.Add("Surfaces Off") MyArrayList.Add("Mesh & Surfaces Off") MyArrayList.Add("Mesh & Surfaces On") VisibilityInput = InputListBox("Sets the visibility of Mesh and Surface bodies on the drawing", MyArrayList, d0, Title := "Cadline iLogic: Visibility", ListName := "Please Choose an option from the list below") 'Hold Current State in Memory >>> Needs a "VIEW1" on the drawing, as this is what it reads from Dim oMesh As Boolean = ActiveSheet.View("VIEW1").View.IncludeMeshBodies Dim oSurface As Boolean = ActiveSheet.View("VIEW1").View.IncludeSurfaceBodies TruFalsMesh = oMesh TruFalsSurf = oSurface 'Set States based on Input list box If VisibilityInput = "Mesh On" Then TruFalsMesh = True oMesh = True Else If VisibilityInput ="Mesh Off" Then TruFalsMesh = False oMesh = False Else If VisibilityInput ="Surfaces On" Then TruFalsSurf = True oSurface = True Else If VisibilityInput ="Surfaces Off" Then TruFalsSurf = False oSurface = False Else If VisibilityInput ="Mesh & Surfaces Off" Then TruFalsMesh = False TruFalsSurf = False oMesh = False oSurface = False Else If VisibilityInput ="Mesh & Surfaces On" Then TruFalsMesh = True TruFalsSurf = True oMesh = True oSurface = True End If 'Code by @ClintCadline,originally posted here: https://www.cadlinecommunity.co.uk/hc/en-us/articles/115005749125 Dim oView As DrawingView = Nothing Dim oDrawingViews As DrawingViews = ThisApplication.ActiveDocument.Sheets.Item(1).DrawingViews ' Iterate through drawing views For i = 1 To oDrawingViews.Count oView = oDrawingViews.Item(i) xView = oView.Name ActiveSheet.View(xView).View.IncludeMeshBodies = TruFalsMesh ActiveSheet.View(xView).View.IncludeSurfaceBodies = TruFalsSurf Next