Witam
Mam makro, które eksportuje DXF ze złożenia arkusza blachy, czy mogę dokonać modyfikacji, aby pogrupować pliki wychodzące według grubości (w folderze D).(grubość) ...
Z góry dziękuję
Witam
Mam makro, które eksportuje DXF ze złożenia arkusza blachy, czy mogę dokonać modyfikacji, aby pogrupować pliki wychodzące według grubości (w folderze D).(grubość) ...
Z góry dziękuję
Witam
Tak, jest to możliwe poprzez odczyt właściwości thickness listy elementów ciętych
Oto przykład kodu służącego do pobierania tej właściwości na otwartej części:
Option Explicit
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swFeat As SldWorks.Feature
Dim custPrpMgr As SldWorks.CustomPropertyManager
Dim myThickness As String
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
If swModel Is Nothing Then Exit Sub
Set swFeat = swModel.FirstFeature
While Not swFeat Is Nothing
If swFeat.GetTypeName2 = "CutListFolder" Then
Set custPrpMgr = swFeat.CustomPropertyManager
custPrpMgr.Get2 "Epaisseur de tôlerie", "", myThickness
Debug.Print "Epaisseur: " & myThickness
End If
Set swFeat = swFeat.GetNextFeature
Wend
End Sub
Witam
, ??
W załączeniu jest plik, który posiadam
Zastępuje linię:
Const OUT_NAME_TEMPLATE As String = "DXFs\<_FileName_>_<_FeatureName_>_<_ConfName_>_<Description>.dxf"
Przez:
Const OUT_NAME_TEMPLATE As String = "DXFs\Epaisseur_<Epaisseur de tôlerie>\<_FileName_>_<_FeatureName_>_<_ConfName_>_<Description>.dxf"
Uwaga: Sprawdź pisownię właściwości "Grubość blachy" w swoich częściach. I odpowiednio modyfikuje powyższą linię.
Jeśli chcesz uzyskać zaokrągloną wartość grubości, dodaj:
If Val(resVal) > 0 Then resVal = Round(resVal, 0)
Tuż za linią:
swCustPrpMgr.Get2 token, "", resVal
Powinien umieścić DXF w folderze "\<Część>\DXFs\Epaisseur_XX\
Problem może pochodzić z pokoju. Czy możesz dołączyć część testową.
Tak. Postępując zgodnie z instrukcją zawartą w moim pierwszym poście,
>Sprawdź pisownię właściwości "Grubość blachy" w swoich częściach. I odpowiednio modyfikuje powyższą linię.
Linia powinna być:
Const OUT_NAME_TEMPLATE As String = "DXFs\Epaisseur_<Sheet Metal Thickness>\<_FileName_>_<_FeatureName_>_<_ConfName_>_<Description>.dxf"
Witam
Pod linkiem youtube znajduje się link do pobrania Marco do przetestowania
Niech Moc będzie z tobą