|
经典图书 Get Sheet in Multi-sheet Drawing Example (VBA)
This example shows how to get each sheet in a multi-sheet drawing regardless whether the sheet is loaded.
'----------------------------------------------
'
' Preconditions:
' (1) Click File > Open.
' (2) Open samplestutorialadvdrawingsfoodprocessor.sldrw.
' (3) Select Selected and select Sheet1 in Select sheets to load .
' (4) Click Open.
' (5) Run the macro.
'
' Postconditions: Only Sheet1 is loaded.
'
' NOTE: Because this drawing document is used by a
' SolidWorks online tutorial, do not save any
' changes when closing the document.
'
'----------------------------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swDraw As SldWorks.DrawingDoc
Dim vSheetName As Variant
Dim i As Integer
Dim bRet As Boolean
Sub main()
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set swDraw = swModel
' Get the sheets in the drawing document
vSheetName = swDraw.GetSheetNames
' Traverse the drawing sheets and determine whether
' they're loaded
For i = 0 To UBound(vSheetName)
bRet = swDraw.ActivateSheet(vSheetName(i))
Dim swSheet As Sheet
Set swSheet = swDraw.Sheet(vSheetName(i))
'swSheet = swDraw.GetCurrentSheet
If (swSheet.IsLoaded) Then
Debug.Print (vSheetName(i) & " is loaded.")
Else
Debug.Print (vSheetName(i) & " is not loaded.")
End If
Next i
End Sub |
|