Hoi allemaal
Ik heb momenteel een macro waarmee ik mijn .slddrw-document in pdf kan opslaan onder dezelfde map en dezelfde naam.
Tot nu toe gaat het goed, het probleem is dat het alle vellen van mijn tekening opslaat en ik wil dat het me alleen het actieve blad opslaat wanneer ik mijn macro start.
Ik weet zeker dat de oplossing eenvoudig is, maar niets te doen Ik kan de juiste code niet vinden, hier is de macro die ik van het forum heb gekregen en die ik gebruik:
'**************************************************************************************************************************
'* Voorbeeld van een macro waarmee u documenten als PDF's kunt opslaan
'* U kunt de extensie wijzigen om het document op te slaan in elk formaat dat door SW wordt ondersteund
'* Gebaseerd op het voorbeeld van Axemble "Saveas_pdf"
'* Bewerken door MCD
'**************************************************************************************************************************
Sub hoofd()
Dim swApp als SldWorks.SldWorks
Dim swmodel als SldWorks.ModelDoc2
Dim stPath als snaar
Dim lgFile zo lang
Dim blretval als Booleaanse
Dim fouten zo lang
Dim waarschuwingen zo lang
Stel swApp = Toepassing.SldWorks in
'We krijgen het actieve document
Stel swmodel = swApp.ActiveDoc in
Zo niet, dan is Swmodel niets
'Wij controleren of het dossier geregistreerd is
Als swmodel. GetPathName = "" dan
MsgBox "Sla uw document op voordat u de macro start", vbInformatie
Einde
Anders
'We krijgen de locatie van het bestand
stPath = swmodel. GetPathName (GetPathNaam)
'We krijgen het aantal tekens tot . van de extensie
lgFile = InStrRev(stPath, ".", -1, vbTextCompare) - 1
'We herstellen het pad zonder de uitbreiding
Als lgFile > 0 Dan
stPath = Links(stPath, lgFile)
Einde als
Einde als
"Indien het document een document is
Als swmodel. GetType = swDocPART Dan
Wij creëren de ontwikkelde
'blretval = swmodel. ExportFlatPatternView(stPath & ". DXF", 1)
De DXF werd opgericht
'blretval = swmodel. SaveAs3(stPath & ". DXF", 0, 0)
MsgBox: "Dit is een Piéce-bestand. Open de tekening om de PDF te maken", vbInformatie
'Als het document een tekening is
ElseIf swmodel. GetType = swDocDRAWING dan
De DXF werd opgericht
'blretval = swmodel. SaveAs3(stPath & "_drw.pdf", 0, 0)
Maak de PDF
blretval = swmodel. SaveAs3(stPath & ".pdf", 0, 0)
Einde als
'We slaan het bestand op
blretval = swmodel. Opslaan3(0, 0, 0)
Einde als
Einde Sub