' ****************************************************************************** ' Makro "Export in pdf dxf Jpg .swp" von Makrotauschbörse angepasst 26.08.11/ABu ' angepasst 15.10.13/ABu ' ****************************************************************************** Dim swApp As Object Dim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Dim FeatureData As Object Dim Feature As Object Dim Component As Object Dim saveFileName As String Dim bRet As Boolean Dim swDocEx As ModelDocExtension Dim swPropMgr As CustomPropertyManager Dim sProValue As String Dim sProEvalValue As String Dim sTimestamp As String Dim sFileName As String Sub main() sTimestamp = Format(DateTime.Now, "yyyyMMdd", vbMonday, vbFirstJan1) Set swApp = Application.SldWorks Set Part = swApp.ActiveDoc Set swDocEx = Part.Extension Set swPropMgr = swDocEx.CustomPropertyManager("") bRet = swPropMgr.Get3("Description", False, sProValue, sProEvalValue) 'Hier Feldnamen, welcher ausgelesen werden soll sProEvalValue = System.Text.RegularExpressions.Regex.Replace(sProEvalValue, "[\.,!?\<>/;:]", "_") ' sProEvalValue = sProEvalValue.Replace("<", "_") ' sProEvalValue = sProEvalValue.Replace(">", "_") ' sProEvalValue = sProEvalValue.Replace(":", "_") ' sProEvalValue = sProEvalValue.Replace(";", "_") ' sProEvalValue = sProEvalValue.Replace("\", "_") ' sProEvalValue = sProEvalValue.Replace("/", "_") ' sProEvalValue = sProEvalValue.Replace("?", "_") ' sProEvalValue = sProEvalValue.Replace("'", "_") ' sProEvalValue = sProEvalValue.Replace("!", "_") ' sProEvalValue = sProEvalValue.Replace(",", "_") sFileName = sTimestamp & " " & sProEvalValue ' MsgBox sFileName swApp.ActiveDoc.ActiveView.FrameState = 1 swApp.ActiveDoc.ActiveView.FrameState = 1 Part.EditSketch If (swApp.ActiveDoc.GetPathName = "") Then 'Abfrage ob Name vergeben wurde MsgBox ("Bitte zuerst Zeichnung speichern!") Exit Sub End If 'dxf 'saveFileName = Left(swApp.ActiveDoc.GetPathName, Len(swApp.ActiveDoc.GetPathName) - Len(Part.GetTitle) + 2) + sFileName + ".dxf" ' Speichern als DXF-Datei im aktuellen Pfad saveFileName = "c:\Step-Pdf\" + sFileName + ".dxf" ' Speichern als DXF-Datei im angegebenen Pfad Part.SaveAs2 saveFileName, 0, True, False 'pdf 'saveFileName = Left(swApp.ActiveDoc.GetPathName, Len(swApp.ActiveDoc.GetPathName) - Len(Part.GetTitle) + 2) + sFileName + ".pdf" ' Speichern als PDF-Datei im aktuellen Pfad 'saveFileName = "c:\Step-Pdf\" + sFileName + ".pdf" ' Speichern als PDF-Datei im angegebenen Pfad 'Part.SaveAs2 saveFileName, 0, True, False 'jpg 'saveFileName = Left(swApp.ActiveDoc.GetPathName, Len(swApp.ActiveDoc.GetPathName) - Len(Part.GetTitle) + 2) + sFileName + ".jpg" ' Speichern als JPG-Datei im aktuellen Pfad 'saveFileName = "c:\temp\" + sFileName + ".jpg" ' Speichern als JPG-Datei im angegebenen Pfad 'Part.SaveAs2 saveFileName, 0, True, False End Sub