Fermeture de processus «Excel.exe » restant en instance

Résolu
VB64MUS - 23 sept. 2012 à 12:02
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 - 24 sept. 2012 à 10:18
Salut tout le monde
Voila j'ai un problème d'accéssibilité à mon fichier Excel réouvert à partir d'une application VBA et ayant subi des modification de données et enregistré sous un même nom par exemple « Srce_Fich.xlsx » . C'est-à-dire le fichier source devient en quelque sorte verrouillé et inaccessible à la seconde tentative de son ouverture (une deuxième fois ) et des messages s'affichent telles que par exemple : Impossible d'accéder à « Srce_Fich.xlsx »
En outre si l'utilisateur déroule l'application autant de fois ,autant de processus Excel.exe sont alors en cours d'exécution et sont visibles dans la fenêtre du Gestionnaire des taches de Windows pourtant il me semble que les instructions prévues dans mon application à mon avis devraient sauvegarder et fermer le premier fichier ouvert.
Voici les parties du code de mon application qui nécessitent sans doute un complément de lignes pour arrêter et fermer le premier processus «Excel.exe » restant en instance à la deuxième ouverture du même nom du fichier :

Private Sub CommandButton1_Click()
Dim xls_Class As Workbook
Dim Excel_APP As Excel.Application
'Ouverture d'un fichier Excel
Set Excel_APP = CreateObject("Excel.Application")
Set xls_Class = Excel_APP.Workbooks.Add
Set xls_Feuil = Excel_APP.Sheets(1)
xls_Feuil.NAME = "Feuil1"
Excel_APP.Visible = False
With xls_Feuil
.Cells(1, 1).Value = 120
.Cells(2, 1).Value = 100
.Cells(3, 1).Value = 160
End With
xls_Class.SaveAs "D:\Divers\ Srce_Fich.xlsx "
xls_Class.Saved = True
xls_Class.Close
Shell ("taskkill /F /IM Excel.exe")
Excel_APP.Quit
Set Excel_APP = Nothing
END SUB

Un grand merci à l'avance à toute personne pouvant me donner une solution définitive au problème posé de manière à ce que le fichier « Srce_Fich.xlsx » est ouvert et est modifié autant de fois que l'application ci-dessus est lancée .
Merci à toute l'équipe.

5 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
24 sept. 2012 à 08:42
Désolé, mais mon temps est au moins aussi précieux que le tien et le demandeur (l'intéressé), c'est toi.
Je n'interviendrai donc à nouveau que lorsque tu auras consacré un peu de ton temps à la lecture à laquelle je t'ai convié.
Et ce d'autant qu'y figure un exemple de code !


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
3
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
24 sept. 2012 à 10:18
Salut,

j'ai récemment répondu à cette question, vas voir ici


il y a 2 liens à aller voir dans ma dernière réponse.

A+
3
Utilisateur anonyme
23 sept. 2012 à 17:36
Bonjour,

Va voir là
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
23 sept. 2012 à 18:28
Bonjour,
Prière d'ouvrir ton aide en ligne sur la fonction GetObject. Et lire l'exemple donné.
Cela t'évitera d'ouvrir une instance de Excel totalement inutilement (puisque Excel est déj)à nécessairement ouvert, si tu entre dans la maco montrée !!!).


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Sulut tout le monde
Tout d’abord je remercie M. Clément et M. Jacques de m’avoir répondu et orienté à travers leurs indications sauf que peut être je dois trouver du temps et être en bonne forme pour passer encore à la lecture des pages je trouve que c’est logique mais ma question ne demande pas aussi d’investigation si quel qu’un parmi le club à la clé de la solution tout le plaisir sera pour lui c’est sûr

Voila encore de précision :
Au départ le fichier n’existe pas et il est crée à la suite de la première mise en route de l’application VBA , les modifications apportées au fichier sont acceptées et sont enregistrées sous son nom unique mais à la troisième tentative de sauver d’autres modifications dans le même classeur il n’y a pas accès au fichier en question et les messages d’errurs s’affichent.
Je souhaite apprendre à travers de vos prochaines réponses les instructions vba à ajouter et insérer à l’endroit précis de mon code présenté à l’occasion de ma dernière question.
Merci encore
0
Rejoignez-nous