En prenant des morceaux de réponse de chacun de vos commentaires j'ai réussi à résoudre mon problème et je vous remercie !
La partie du côde correspondante est la suivante :
Dim swApp As Object Dim Part As SldWorks.ModelDoc2 Dim swView As SldWorks.View Dim swModExt As SldWorks.ModelDocExtension Dim swPathDir As String Dim swPath As String Dim echf As Variant 'Sera stocké l'échelle de la feuille en format fraction (a:b) Dim echV1 As Variant 'Sera stocké l'échelle de la vue 1 en format fraction (a:b) Dim Rep As Variant 'Pour le stockage des MsgBox
Sub EnregistrementDXFPDF()
Set swApp = Application.SldWorks Set Part = swApp.ActiveDoc 'associe part au document en cours
'------------ Récupération des informations (1) Set swModExt = Part.Extension Set Prop = swModExt.CustomPropertyManager("")
Set swView = Part.GetFirstView 'la première vue étant la feuille echf = swView.ScaleRatio 'récupération de l'échelle Set swView = swView.GetNextView 'Passage à la première vue echV1 = swView.ScaleRatio 'récupération de l'échelle 'récupération de la pièce Set swModel = swView.ReferencedDocument Set swModExt = swModel.Extension
'------------ Vérifications de sécurité '--Vérif. de l'échelle de la feuille-- If echf(0) <> "1" Or echf(1) <> "1" Then Rep = MsgBox("Attention, l'echelle de la feuille est de " & echf(0) & ":" & echf(1) & vbCrLf & _ "Voulez-vous continuer ?", vbYesNo, "Enregistrement Pdf Dxf") If Rep = vbNo Then Exit Sub End If '--Vérif. de l'échelle de la vue-- If echV1(0) <> "1" Or echV1(1) <> "1" Then Rep = MsgBox("Attention, l'echelle de la vue est de " & echV1(0) & ":" & echV1(1) & vbCrLf & _ "Voulez-vous continuer ?", vbYesNo, "Enregistrement Pdf Dxf") If Rep = vbNo Then Exit Sub End If