Hoi allemaal
Ik heb een macro op het forum om mijn Solidworks Europarlementariërs op te slaan in PDF, mijn probleem is dat de macro de naam van de PDF verandert en dat zou ik niet leuk vinden.
Ik heb de regels die ik niet nodig heb al verwijderd, maar het is nog niet goed...
Kan iemand alstublieft de macro aan te passen zodat de bestandsnaam blijft zoals de MEP, ik zou graag de 2 opslaglocaties willen behouden.
De macro:
' We definiëren de noodzakelijke variabelen
Dim swApp als object
Dim swModel als SldWorks.ModelDoc2
Dim swCustProp als CustomPropertyManager
Dim valOut1 als snaar
Dim valOut2 als snaar
Dim valOut3 als snaar
Dim opgelostValOut1 als tekenreeks
Dim opgelostValOut2 als tekenreeks
Dim opgelostValOut3 als string
Dim pad als snaar
Dim PathDesktop als tekenreeks
Dim swModelDocExt als SldWorks.ModelDocExtension
Dim swExportPDFData As SldWorks.ExportPdfData
Dim nFileName als tekenreeks
Dim nFileName2 als tekenreeks
Dim boolstatus als Booleaanse
Dim lErrors zo lang
Dim lWaarschuwingen zo lang mogelijk
Dim lgFile als geheel getal
Sub hoofd()
'We klampen ons vast aan Solidworks
Stel swApp = Toepassing.SldWorks in
' We halen het actieve document op in Solidworks
Stel swModel = swApp.ActiveDoc in
' We controleren of een document open staat in Solidworks
Als swModel niets is, dan
MsgBox "Een document moet actief zijn in Solidworks.", vbCritical
Einde
Einde als
' We verifiëren dat het document dat in Solidworks is geopend een plan is
Als swModel.GetType <> swDocDRAWING Dan
MsgBox "Het actieve document in Solidworks moet een plan zijn.", vbCritical
Einde
Einde als
' We controleren of de open plan in Solidworks is opgeslagen
Als swModel.GetPathName = "" Dan
swModel.Opslaan
Einde als
' We halen het pad van de planregistratiemap op
Pad = swModel.GetPathName
lgFile = InStrRev(Pad, "\", -1, vbTextCompare) - 1
Als lgFile > 0 Dan
Pad = Links (Pad, lgFile)
Einde als
' We herstellen het pad van het Windows-bureaublad
PathDesktop = Over ("GEBRUIKERSPROFIEL") & "\Desktop"
' We definiëren de exportparameters in PDF
Stel swModelDocExt = swModel.Extension in
Stel swExportPDFData = swApp.GetExportFileData(1) in
swExportPDFData.ViewPdfAfterSaving = Onwaar
' We definiëren het pad en de naam van het eerste pdf-bestand dat moet worden gemaakt
nFileName = Pad & "\" & resolvedValOut1 & " - " & resolvedValOut2 & " - Ind." & resolvedValOut3 & " - " & dateNow & ".PDF"
' Sla het eerste pdf-bestand op
boolstatus = swModelDocExt.SaveAs(nFileName, 0, 0, swExportPDFData, lErrors, lWarnings)
' We definiëren het pad en de naam van het tweede pdf-bestand dat moet worden gemaakt
nFileName2 = PathDesktop & "\" & resolvedValOut1 & " - " & resolvedValOut2 & " - Ind." & resolvedValOut3 & " - " & dateNow & ".PDF"
' We slaan het tweede pdf-bestand op
boolstatus = swModelDocExt.SaveAs(nFileName2, 0, 0, swExportPDFData, lErrors, lWarnings)
Einde Sub
Bij voorbaat dank.