Comment fermer complètement SolidWorks grâce à une macro sous Excel?

Bonjour,

 

J'ai une marco sous excel permettant de modifier un fichier solidworks.

Cependant, je voudrais savoir comment réussir à fermer complétement solidworks avec ma macro excel?

J'arrive à fermer mon fichier mais solidworks reste ouvert...

Est ce que quelqu'un aurait une solution?

Bonjour,

 

Voilà un bout de code qui devrait répondre à cette question :

 

'closes solidworks

Sub DeactivateSolidWorks()

     On Error Resume Next

   

      swApp.ExitApp
    
     'Try to Activate Solidworks, however, it always appears that the while loop is never entered
     Set swApp = GetObject(, "SldWorks.Application")

     'wait until solidworks has ended
     Do While Err.Number = 0
         Set swApp = GetObject(, "SldWorks.Application")
     Loop


      '***note I have also tried.  this seems to make the situation worse some how
      'Application.Wait Now + TimeValue("00:00:10")

End Sub

 

Source :

https://forum.solidworks.com/thread/56449

1 « J'aime »

Bonjour,

 

par code regarder l'API

SldWorks::ExitApp.

 

Sinon il est egalement possible de tuer le process (c'est un peu moin propre mais radicale)

Soit par les outils de la frameWorks Process

 

Soit en executant un .Bat contenant 

 

taskkill /f /im sldworks.exe /t
taskkill /f /im solidworkslicensing.exe /t
taskkill /f /im solidworkslictemp.0001 /t
taskkill /f /im sldexitapp.exe /t
taskkill /f /im sldimscheduler.exe /t
taskkill /f /im sldboengine /t

 

 

7 « J'aime »

Autant pour moi, a priori la première réponse ne foncitonne pas, voir ici :

http://www.taltech.com/support/entry/opening_and_closing_an_application_from_vba

Ou ici :

http://www.excel-downloads.com/forum/183603-fermer-un-programme-en-vba-avant-autre-choix.html

 

Ou méthode radicale :

 

Shell "taskkill /f /im solidworks.exe", vbHide

 

Merci pour vos réponses si rapide.

Bonjour,

Ma réponse sort un peu du context Excel. Mais cela peut servir à d'autres utilisateurs. Pour être sûr de fermer proprement SolidWorks, après un plantage par exemple, vous pouvez lancer ce fichier bat.

Cordialement


killsw.bat
4 « J'aime »