SolidWorks macro pour ajouter des caractères au début du nom de fichier à sauvegarder

Bonjour,

Je reprends le flambeau de l'édition de macros à mon boulot, mais sans les bases en VBA, alors je fais surtout du bricolage/adaptation plutôt que du codage pour l'instant, et après plusieurs recherches et tests infructueux, me voilà.

La problématique est simple, aujourd'hui ma macro d'enregistrement en PDF garde simplement le même nom de fichier que le DRW : 2263-4B.slddrw -> 2263-4B.pdf

Je souhaiterai que la macro ajoute automatiquement des caractères juste avant le nom de fichier lors de la génération de PDF, comme suit : 2263-4B.slddrw -> CK-2263-4B.pdf

Ci-dessous la partie qui concerne l'enregistrement en PDF :

-------------------------------------------------------------------------------------------

Sub main()

Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim PathName As String

Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set swDraw = swModel

    If MsgBox("Souhaitez-vous enregistrer en PDF?", vbQuestion + vbYesNo, "PDF") = vbNo Then
        MsgBox "Annulé", vbOKOnly, "PDF"
        Exit Sub
    End If

    PathName = Mid(swModel.GetPathName, 1, Len(swModel.GetPathName) - 7)

    swModel.SaveAs2 PathName & ".PDF", 0, True, False

End Sub

-------------------------------------------------------------------------------------------

(L'option "Insérer un extrait de code" de Lynkoa faisait bugger mon message)

J'ai tenté plusieurs manips basiques, comme ajouter simplement "CK-" & juste après PathName = , mais sans succès. Quelqu'un aurait-il une solution à ce petit soucis?

En vous remerciant d'avance.

Bonjour,

Normalement :

PathName = Mid(swModel.GetPathName, 1, Len(swModel.GetPathName) - 7)

PathName = "Ck-" & PathName

 

Merci pour votre aide, malheureusement cette méthode n'a pas l'air de fonctionner ici, aucun pdf n'est généré quand je lance la macro avec cet ajout.

Pardon, mal lu: 

PathName = Mid(swModel.GetPathName, 1, InStrRev(swModel.GetPathName, "\"))
FileName = Mid(swModel.GetPathName, InStrRev(swModel.GetPathName, "\") + 1)
FileName = Left(FileName, Len(FileName) - 7)
FileName = "CK-" & FileName
PathName = PathName & FileName
swModel.SaveAs2 PathName & ".PDF", 0, True, False


 

2 « J'aime »

Super, ça fonctionne!

Merci encore.