Enregistrement de macro

Bonjour à tous,

Je ne sais pas si c'est le bon endroit pour poser cette question mais je sais qu'il y en a qui touchent bien le Vba SW donc. Cela serait pour avoir quelques explications car à chaque fois que j'enregistre une macro je me pose ces questions Voici une macro enregistrée servant à reconstruire un fichier :

               Dim swApp As Object
               Dim Part As Object
               Dim boolstatus As Boolean
               Dim longstatus As Long, longwarnings As Long
Sub main()
               Set swApp = _
               Application.SldWorks
               Set Part = swApp.ActiveDoc
               boolstatus = Part.EditRebuild3()
End Sub

J'aimerais savoir pourquoi SW créer toujours les variables "longstatus" et "longwarning" alors qu'il ne les utilise presque jamais ? Au cas où ? A quoi elles pourraient servir svp ?
De plus il y a cette variable du type Boolean, pourquoi est-elle créée svp? Et pourquoi ce type de varaible est utilisée pour faire cette action de reconstruction ?

Merci de vos réponses qui m'éclairerons pour le codage de ma macro :)

Bonne journée

longqtatus et longwarning servent a recupere des code erreur si il y en à dans ton exemple tu peut le suprimer car il ne servent pas dans le code

pour boolstatus c'est propre a SW et je ne serait definir réellement sont enjeux mais il faut le laisser :/

2 « J'aime »

C'est en général des variables utilisé pour récupérer des erreurs. Par exemple sur

   boolstatus = Part.EditRebuild3()

Tu peux faire un test comme ceci:

   If boolstatus Then
      Debug.print "Fonction réussi"
  else
      Debug.print "Fonction en échec"
   Endif

Mais personnellement je ne les utilises presque jamais, je les supprime tout le temps. Ce que je te conseille de faire quand tu as enregistrer une macro:

   Set swApp = _
               Application.SldWorks

  -> Possibilité de mettre sur une seule ligne

   Set swApp = Application.SldWorks

----

               Dim swApp As Object
               Dim Part As Object

Indiquer les types pour avoir la liste des fonctions diposnible

               Dim swApp As SldWorks.SldWorks
               Dim Part As SldWorks.ModelDoc2

 

2 « J'aime »