Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Fermer les deux classeurs utilisés

6 réponses
Avatar
Patrick
Bonjour,
J'aimerai lorsqu'il y a une erreur que les deux classeurs ouvert se ferme
sans sauvegarder
J'ai essayé les lignes après MsgBox mais il reste le premier classeur ouvert
Avez-vous une idée svp?
Merci.
On Error GoTo GestionErreur
'creer une copie entiere de la feuille dans un nouveau classeur
Sheets("toto").Copy
' copy les cellules de A1 à H55
[A1:H55].Copy
Application.DisplayAlerts = False
[A1].PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Rem [A1].PasteSpecial Paste:=xlPasteValues
Rem ActiveWorkbook.Close savechanges:=False

Exit Sub
GestionErreur:
MsgBox "l'Application va se terminer !" & vbCr & Err.Description & vbCr &
Err.Number & vbCr & "Erreur "
' j'ai trouvé ce bout de code mais il ne ferme pas tout il reste la premier
classeur
' For Each Wk In Workbooks
' Wk.Close savechanges:=False
' Next Wk

End Sub

6 réponses

Avatar
FFO
Salut Patrick
Je viens de tester ton code
Il fonctionne parfaitement si tant est que tu supprimes les cotes aux lignes :

' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

Tu dois mettre :

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Next Wk

Et si tu veux de plus quitter l'application Excel tu rajoutes :

Application.Quit

Ce qui donne

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Application.Quit
Next Wk

Espérant t'avoir aidé !!!






Bonjour,
J'aimerai lorsqu'il y a une erreur que les deux classeurs ouvert se ferme
sans sauvegarder
J'ai essayé les lignes après MsgBox mais il reste le premier classeur ouvert
Avez-vous une idée svp?
Merci.
On Error GoTo GestionErreur
'creer une copie entiere de la feuille dans un nouveau classeur
Sheets("toto").Copy
' copy les cellules de A1 à H55
[A1:H55].Copy
Application.DisplayAlerts = False
[A1].PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:úlse, Transpose:úlse
Rem [A1].PasteSpecial Paste:=xlPasteValues
Rem ActiveWorkbook.Close savechanges:úlse

Exit Sub
GestionErreur:
MsgBox "l'Application va se terminer !" & vbCr & Err.Description & vbCr &
Err.Number & vbCr & "Erreur "
' j'ai trouvé ce bout de code mais il ne ferme pas tout il reste la premier
classeur
' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

End Sub





Avatar
Patrick
Bonjour,
Avec moi le seule fichier qui se ferme c'est celui qui contient la macro et
le fichier qui reste c'est le classeurX qui contient la feuille toto crée
avec :
Sheets("toto").Copy
et bien entendu j'ai enlevé ' devant.
ci tu as une autres solution je veux bien.
Merci.
Patrick.
"FFO" a écrit dans le message de news:

Salut Patrick
Je viens de tester ton code
Il fonctionne parfaitement si tant est que tu supprimes les cotes aux
lignes :

' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

Tu dois mettre :

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Next Wk

Et si tu veux de plus quitter l'application Excel tu rajoutes :

Application.Quit

Ce qui donne

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Application.Quit
Next Wk

Espérant t'avoir aidé !!!






Bonjour,
J'aimerai lorsqu'il y a une erreur que les deux classeurs ouvert se ferme
sans sauvegarder
J'ai essayé les lignes après MsgBox mais il reste le premier classeur
ouvert
Avez-vous une idée svp?
Merci.
On Error GoTo GestionErreur
'creer une copie entiere de la feuille dans un nouveau classeur
Sheets("toto").Copy
' copy les cellules de A1 à H55
[A1:H55].Copy
Application.DisplayAlerts = False
[A1].PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:úlse, Transpose:úlse
Rem [A1].PasteSpecial Paste:=xlPasteValues
Rem ActiveWorkbook.Close savechanges:úlse

Exit Sub
GestionErreur:
MsgBox "l'Application va se terminer !" & vbCr & Err.Description & vbCr &
Err.Number & vbCr & "Erreur "
' j'ai trouvé ce bout de code mais il ne ferme pas tout il reste la
premier
classeur
' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

End Sub







Avatar
FFO
Rebonjours
Une précision
Ton doc qui reste fait il parti de la même fenêtre Excel
Autrement dit lorsque tous tes documents sont ouverts peux tu tous les
selectionner par l'option Fenêtre du bandeau de l'application ou est ce que
celui qui est récalcitrant à la fermeture ne peut être atteint que par les
icones Windows en bas de l'écran ???
Dans cette hypothèse il y aurait 2 applications Excel distincts d'ouvertes
d'où ta problématique
Il faudrait que tous tes documents soit dans la même fenêtre Excel

Dis moi !!!


Bonjour,
Avec moi le seule fichier qui se ferme c'est celui qui contient la macro et
le fichier qui reste c'est le classeurX qui contient la feuille toto crée
avec :
Sheets("toto").Copy
et bien entendu j'ai enlevé ' devant.
ci tu as une autres solution je veux bien.
Merci.
Patrick.
"FFO" a écrit dans le message de news:

Salut Patrick
Je viens de tester ton code
Il fonctionne parfaitement si tant est que tu supprimes les cotes aux
lignes :

' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

Tu dois mettre :

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Next Wk

Et si tu veux de plus quitter l'application Excel tu rajoutes :

Application.Quit

Ce qui donne

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Application.Quit
Next Wk

Espérant t'avoir aidé !!!






Bonjour,
J'aimerai lorsqu'il y a une erreur que les deux classeurs ouvert se ferme
sans sauvegarder
J'ai essayé les lignes après MsgBox mais il reste le premier classeur
ouvert
Avez-vous une idée svp?
Merci.
On Error GoTo GestionErreur
'creer une copie entiere de la feuille dans un nouveau classeur
Sheets("toto").Copy
' copy les cellules de A1 à H55
[A1:H55].Copy
Application.DisplayAlerts = False
[A1].PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:úlse, Transpose:úlse
Rem [A1].PasteSpecial Paste:=xlPasteValues
Rem ActiveWorkbook.Close savechanges:úlse

Exit Sub
GestionErreur:
MsgBox "l'Application va se terminer !" & vbCr & Err.Description & vbCr &
Err.Number & vbCr & "Erreur "
' j'ai trouvé ce bout de code mais il ne ferme pas tout il reste la
premier
classeur
' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

End Sub












Avatar
Patrick
Bonjour,
Oui, je pense que j'ai qu'un Excel de lancé puisque dans le gestionnaire de
tâche de Windows il n'y a que 1 Excel.exe
dans Excel au menu Fenêtre il y a deux "classeur" (celui qui lance la macro
titi.xls et le classeur1.xls crée comme je l'ai dis tout à l'heure) en fin
de compte ce n'est peut être pas le bon terme que j'emploi "classeur".
Donc pour repondre à ta question le recalcitrant peut être atteint par le
menu Fenêtre.
Merci.
Patrick.
"FFO" a écrit dans le message de news:

Rebonjours
Une précision
Ton doc qui reste fait il parti de la même fenêtre Excel
Autrement dit lorsque tous tes documents sont ouverts peux tu tous les
selectionner par l'option Fenêtre du bandeau de l'application ou est ce
que
celui qui est récalcitrant à la fermeture ne peut être atteint que par les
icones Windows en bas de l'écran ???
Dans cette hypothèse il y aurait 2 applications Excel distincts
d'ouvertes
d'où ta problématique
Il faudrait que tous tes documents soit dans la même fenêtre Excel

Dis moi !!!


Bonjour,
Avec moi le seule fichier qui se ferme c'est celui qui contient la macro
et
le fichier qui reste c'est le classeurX qui contient la feuille toto crée
avec :
Sheets("toto").Copy
et bien entendu j'ai enlevé ' devant.
ci tu as une autres solution je veux bien.
Merci.
Patrick.
"FFO" a écrit dans le message de news:

Salut Patrick
Je viens de tester ton code
Il fonctionne parfaitement si tant est que tu supprimes les cotes aux
lignes :

' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

Tu dois mettre :

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Next Wk

Et si tu veux de plus quitter l'application Excel tu rajoutes :

Application.Quit

Ce qui donne

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Application.Quit
Next Wk

Espérant t'avoir aidé !!!






Bonjour,
J'aimerai lorsqu'il y a une erreur que les deux classeurs ouvert se
ferme
sans sauvegarder
J'ai essayé les lignes après MsgBox mais il reste le premier classeur
ouvert
Avez-vous une idée svp?
Merci.
On Error GoTo GestionErreur
'creer une copie entiere de la feuille dans un nouveau classeur
Sheets("toto").Copy
' copy les cellules de A1 à H55
[A1:H55].Copy
Application.DisplayAlerts = False
[A1].PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:úlse, Transpose:úlse
Rem [A1].PasteSpecial Paste:=xlPasteValues
Rem ActiveWorkbook.Close savechanges:úlse

Exit Sub
GestionErreur:
MsgBox "l'Application va se terminer !" & vbCr & Err.Description &
vbCr &
Err.Number & vbCr & "Erreur "
' j'ai trouvé ce bout de code mais il ne ferme pas tout il reste la
premier
classeur
' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

End Sub














Avatar
cousinhub
Bonsoir,
ce qui m'interpelle c'est cela :
Avec moi le seule fichier qui se ferme c'est celui qui contient la macro



Avec une gestion d'erreur (si ce n'est pas le fichier contenant la macro
then le fermer, et à la fin, fermer celui-ci)
Peut-être....

For Each wk In Workbooks
If wk.Name <> ActiveWorkbook.Name Then Wk.Close savechanges:úlse
Next wk
ActiveWorkbook.Close savechanges:úlse

Bon courage
macro
Bonjour,
Avec moi le seule fichier qui se ferme c'est celui qui contient la macro et
le fichier qui reste c'est le classeurX qui contient la feuille toto crée
avec :
Sheets("toto").Copy
et bien entendu j'ai enlevé ' devant.
ci tu as une autres solution je veux bien.
Merci.
Patrick.
"FFO" a écrit dans le message de news:

Salut Patrick
Je viens de tester ton code
Il fonctionne parfaitement si tant est que tu supprimes les cotes aux
lignes :

' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

Tu dois mettre :

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Next Wk

Et si tu veux de plus quitter l'application Excel tu rajoutes :

Application.Quit

Ce qui donne

For Each Wk In Workbooks
Wk.Close savechanges:úlse
Application.Quit
Next Wk

Espérant t'avoir aidé !!!






Bonjour,
J'aimerai lorsqu'il y a une erreur que les deux classeurs ouvert se ferme
sans sauvegarder
J'ai essayé les lignes après MsgBox mais il reste le premier classeur
ouvert
Avez-vous une idée svp?
Merci.
On Error GoTo GestionErreur
'creer une copie entiere de la feuille dans un nouveau classeur
Sheets("toto").Copy
' copy les cellules de A1 à H55
[A1:H55].Copy
Application.DisplayAlerts = False
[A1].PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:úlse, Transpose:úlse
Rem [A1].PasteSpecial Paste:=xlPasteValues
Rem ActiveWorkbook.Close savechanges:úlse

Exit Sub
GestionErreur:
MsgBox "l'Application va se terminer !" & vbCr & Err.Description & vbCr &
Err.Number & vbCr & "Erreur "
' j'ai trouvé ce bout de code mais il ne ferme pas tout il reste la
premier
classeur
' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

End Sub











Avatar
Patrick
Bonsoir,
J'ai peut être trouver comment faire , je recupére le numéro du classeur
nouvellement crée,pour n'effacer que lui et fermer le projet qui contient la
macro.

On Error GoTo GestionErreur

'creer une copie entiere de la feuille dans un nouveau classeur
Sheets("toto").Copy
NumClasCree = Workbooks.Count
' copy les cellules de A1 à H55
[A1:H55].Copy
Application.DisplayAlerts = False
[A1].PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:úlse, Transpose:úlse
Exit Sub

GestionErreur:
MsgBox "l'Application va se terminer !" & vbCr & Err.Description & vbCr &
Err.Number & vbCr & "Erreur "
Workbooks(NumClasCree).Close savechanges:úlse
ActiveWorkbook.Close savechanges:úlse
End Sub
Pensez-vous que c'est viable ?
Merci.
Patrick.

"Patrick" a écrit dans le message de news:
%
Bonjour,
J'aimerai lorsqu'il y a une erreur que les deux classeurs ouvert se ferme
sans sauvegarder
J'ai essayé les lignes après MsgBox mais il reste le premier classeur
ouvert
Avez-vous une idée svp?
Merci.
On Error GoTo GestionErreur
'creer une copie entiere de la feuille dans un nouveau classeur
Sheets("toto").Copy
' copy les cellules de A1 à H55
[A1:H55].Copy
Application.DisplayAlerts = False
[A1].PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:úlse, Transpose:úlse
Rem [A1].PasteSpecial Paste:=xlPasteValues
Rem ActiveWorkbook.Close savechanges:úlse

Exit Sub
GestionErreur:
MsgBox "l'Application va se terminer !" & vbCr & Err.Description & vbCr &
Err.Number & vbCr & "Erreur "
' j'ai trouvé ce bout de code mais il ne ferme pas tout il reste la
premier classeur
' For Each Wk In Workbooks
' Wk.Close savechanges:úlse
' Next Wk

End Sub