Comment tuer un processus en vba

lord_in Messages postés 44 Date d'inscription   Statut Membre -  
audalice Messages postés 1 Statut Membre -
Bonjour,
j'aimerais bien savoir comment tuer un processus EXCEL.EXE en vba
je suis en vba sous access

merci
Configuration: Windows Vista
Firefox 2.0.0.8

6 réponses

  1. audalice Messages postés 1 Statut Membre 4
     
    Pour l'utilisation de Taskkill, il semble que l'écriture du code VBA soit plutôt :

    vba.Interaction.Shell("TASKKILL /F /IM excel.exe")
    4
  2. garion28 Messages postés 1545 Date d'inscription   Statut Membre Dernière intervention   408
     
    j'ai trouvé ca
    vba.Interaction.Shell("TASKKILL excel.exe /F /IM")

    une interaction avec l'invité de commande

    si ca ne fonctionne pas rajoute cmd.exe devant le taskkill
    1
  3. lord_in Messages postés 44 Date d'inscription   Statut Membre
     
    est ce que la fonction kill peut marcher dans un programmer vba??
    0
    1. ShaBoo Messages postés 406 Statut Membre 50
       
      Je ne sais pas ... mais tu peux tester ...
      0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. Raph04 Messages postés 182 Statut Membre 24
     
    J'ai le même besoin, car dans ma base de donnée je souhaite créer un Excel avec des données provenant de la base.
    Lorsque je lance ma fonction une fois, elle fonctionne et me créer un Excel. Mais à la seconde execution (sans changer, ni les donnée, ni le code) la fonction bug sur un Range et un processus EXCEL.EXE est visible dans le gestionnaire des taches alors que je n'est aucun Excel d'ouvert (du moins de visible...)

    Pourtant à la fin de ma fonction je ferme mon workbook et l'Objet "application excel" :

    xlBook.Close
    xlApp.Quit
    
    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing


    Je pense que le mieux est encore de tuer le processus directement...
    0
  6. Raph04 Messages postés 182 Statut Membre 24
     
    En fait le lien donner plus haut est pas mal.
    C'est un peu lourd, mais ça fonctionne... Le seul problème, c'est que je peux pas lancer ma fonction avec des Excel d'ouvert en même temps... Et en plus maintenant une fois sur 2 (avec un grande précision), toujours sur mon Range, il me fait une erreur en me disant que le server distant n'existe pas ou n'est pas diponible, alors que je travail en Local -_-...

    Mais je comprend vraiment pas pourquoi il me laisse un processus à la fin de ma fonction... parce qu'à mon avis c'est ça qui fait buguer, du style de Excel qui porte le même nom.

    'Initialisations
    Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Add
    
    
    'Creation de la feuille budget
    Set xlSheet = xlBook.Worksheets.Add
    xlSheet.Name = "Budget"
    
    [...]
    Fonctions...
    [...]
    
    xlApp.DisplayAlerts = False
    xlBook.SaveAs chemin & "\Import\Budgets\Budgets " & Me.Liste_Annee.Value & " " & Format(Now, "yyyy-mm-dd - hhmmss") & ".xls"
    xlBook.Close
    xlApp.DisplayAlerts = True
    xlApp.Quit
    
    Abase.Close
    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing
    


    Et c'est pas la 1er fois que j'ai des problème sur les Ranges comme ça...
    0