Hallo
Ik heb een macro gemaakt met behulp van wat ik heb gevonden, het moet mijn MEP converteren naar pdf en deze opslaan in de map van het jaar waarin deze is gemaakt, als de map niet bestaat, maakt u deze aan.
Daar is ze dan:
Dim swApp als object
Deel dimmen als object
Dim FileNamePDF als tekenreeks
Sub hoofd()
Dim swApp als SldWorks.SldWorks
Dim SWmoddoc als SldWorks.ModelDoc2
Zon NumberPlan Als String
Dim PathFile als tekenreeks
Dim Bestandsnaam Als String
Dim NumberLeaf als snaar
Dim FileNamePDF als tekenreeks
Dim PathFileNamePDF als tekenreeks
Dim NameFolderPDF als tekenreeks
Dim nErrors zo lang
Dim nWaarschuwingen zo lang mogelijk
Stel swApp = Toepassing.SldWorks in
Stel SWmoddoc = swApp.ActiveDoc in
'Het pad en de bestandsnaam ophalen
Voorbeeld: \\MERCURE\Sharing\xMethods\Public\DAO\Solidworks\2 - tekening\2014\046-1-2014-A.SLDDRW
PathName = SWmoddoc.GetPathName
FilePath = Left(PathName, InStrRev(PathName, "\")) '\\MERCURY\Sharing\xMethods\Public\DAO\Solidworks\2 - Tekening\2014\
FileName = Right(PathName, Len(PathName) - InStrRev(PathName, "\")) '046-1-2014-A.SLDDRW
FileNamePDF = Right(Bestandsnaam, 13) '2014-A.SLDDRW
FileNamePDF = Links(BestandsnaamPDF, 4) '2014
FileNamePathPDF = "\\MERCURY\Sharing\xMethods\Public\DAO\PDF Plans\" & FolderNamePDF '\\MERCURY\Sharing\xMethods\Public\DAO\PDF Plans\2014\
'------------------------------------------------------------------
'Aangepaste eigenschappen ophalen uit het planbestand
Als SWmoddoc.GetType = swDocDRAWING Controleer dan of we ons op een planbestand bevinden
FileNamePDF = Vervangen(Bestandsnaam, "SLDDRW", "pdf")
Einde als
'------------------------------------------------------------------
'Test of de map met het jaartal bestaat, zo niet, maak deze aan
Als Dir$(FileNamePathPDF) = "" dan
MkDir "FileNamePDF"
Einde als
'------------------------------------------------------------------
'Test of het bestand al bestaat of bevestig
'en dan opnemen
Als Dir$(FileNamePathPDF) = FileNamePDF Dan bestaat 'Het bestand bestaat al'
Als MsgBox ("Het bestand: " & FileNamePDF & vbNewLine & " al bestaat. Wil je hem vervangen?", _
vbOKCancel + vbUitroep) = vbOK Dan
nErrors = SWmoddoc.SaveAs(FileNamePathPDF)
Anders
Als msgBox("PDF-bestand is niet gemaakt.", vbInformation) = vbOK sluit dan Sub '-------bericht en EXIT-------
Einde als
Anders
Als msgbox("Bestand: " & FileNamePDF & vbNewLine & " gaat worden aangemaakt", vbOKCancel + vbInformation) = vbOK dan
nErrors = SWmoddoc.SaveAs(FileNamePathPDF)
Anders
Als msgBox("PDF-bestand is niet gemaakt.", vbInformation) = vbOK sluit dan Sub '-------bericht en EXIT-------
Einde als
Einde als
Einde Sub
Ik weet niet hoe ik het moet testen en ik zou graag willen weten voordat ik het start of ik niet iets stoms heb gedaan, omdat het speelt met de mappen van het netwerk van mijn bedrijf.
Bij voorbaat dank.