Quitter une application

Résolu
un_mec_de_stras
Messages postés
26
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
21 février 2006
- 1 févr. 2006 à 14:16
un_mec_de_stras
Messages postés
26
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
21 février 2006
- 1 févr. 2006 à 16:10
salut a tous

j utilise vb6 avec excel, (pas vba) et mon petit souci est que lorsque je quitte mon application par la croix (situé en haut a droite"windows") ou lors d'un bug , mon fichier excel reste ouvert (dans le gestionnaire des tâches je retrouve EXCEL.EXE) mais lorsque je quitte par le bouton quitter ca fonctionne parfaitement
voici le code de mon bouton :
xl.Application.DisplayAlerts = False
xl.Workbooks.Close

Si vous pouviez m'aider pour que lorsque le projet ce ferme par n'importe quel moyen (bug, volontairement (sans passez par le bouton quitter) mon fichier Excel se ferme aussi)

ps: ce probleme me rend dingue

MERCI A TOUS


un mec de stras

10 réponses

un_mec_de_stras
Messages postés
26
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
21 février 2006

1 févr. 2006 à 16:10
MERCI BEAUCOUP CA MARCHE ENFIN !!!!

un mec de stras
3
thejell1
Messages postés
27
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
29 août 2006

1 févr. 2006 à 14:40
'Si tu fermes une fenetre avec la petite croix, le code suivant l'interceptera
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)

If UnloadMode = vbFormControlMenu Then
Form_Unload (Cancel)
End If

End Sub
0
un_mec_de_stras
Messages postés
26
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
21 février 2006

1 févr. 2006 à 15:13
lorque je le met il ya un message d erreur ki met "erreur de compilation" , "procedure sub ou fonction non defini" et ce message pointe sur form_unload et sur Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)

kel est le prob?

(je doi le mettre dan toutes les feuilles c ca??)


un mec de stras
0
thejell1
Messages postés
27
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
29 août 2006

1 févr. 2006 à 15:15

0

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

Posez votre question
thejell1
Messages postés
27
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
29 août 2006

1 févr. 2006 à 15:18
Probablement tu n'as pas défini de fonction Form_Unload.
Par exemple

Private Sub Form_Unload(Cancel As Integer)

Dim frm As Form

'Fermer excel

For Each frm In Forms
Unload frm
Set frm = Nothing
Next

End Sub
0
un_mec_de_stras
Messages postés
26
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
21 février 2006

1 févr. 2006 à 15:33
doi - je remplacer frm par le nom de ma form ou garder frm?? (le probleme et tjr presen avec ce ke tu ma mi)
et doi je le mettre dans toute les form??


un mec de stras
0
thejell1
Messages postés
27
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
29 août 2006

1 févr. 2006 à 15:36

0
thejell1
Messages postés
27
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
29 août 2006

1 févr. 2006 à 15:43
Oups

en fait tu DOIS pas le mettre partout
Le mieux:

- dans ta frm principale:

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)

Dim frm As Form

'Fermer excel

'Pour s'assurer que toutes les autres formes sont bien fermées
For Each frm In Forms
Unload frm
Set frm = Nothing
Next

End Sub

- dans tes autres frms

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)


'libérer objets inutiles, par exemple



End Sub

Le coup du "If UnloadMode = vbFormControlMenu Then", c'était juste à cause de l'histoire de la croix rouge.
Comme ca ca devrait suffire. (Désolé pour les cédilles, clavier allemand)
0
un_mec_de_stras
Messages postés
26
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
21 février 2006

1 févr. 2006 à 15:49
ya pa de souci pour l ecriture mai le prob perciste
dans mon gestionniare de tache il y a tjr ce EXCEL.EXE


un mec de stras
0
thejell1
Messages postés
27
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
29 août 2006

1 févr. 2006 à 16:00
Est-ce que tu fermes bien Excel à un moment donné?

'----------------Fermeture de l'application Excel---------------------
Public Sub FermerExcel()

On Error GoTo FermerExcel_Error

If Not (appExcel Is Nothing) Then
'appExel ne s'appelle pas forcement comme ca chez toi!
appExcel.Quit
End If
Set appExcel = Nothing

On Error GoTo 0
Exit Sub

FermerExcel_Error:

Set appExcel = Nothing

End Sub
0