Application VBA.Commande Quit à ne pas fermer la totalité de l'Application Excel
J'ai code suivant sous une botton. Quand j'ai cliqué, il suffit de le ferme l'feuille excel, mais ne pas fermer toute application excel.
Application.DisplayAlerts = False
ThisWorkbook.Save
Application.DisplayAlerts = True
Application.Quit
Remarque: je n'ai pas d'autres feuilles ouvrir
fenêtre suivante s'affiche toujours après la fermeture par dessus le Code VBA .
Pourriez-vous avoir plus d'une application Excel ouverts en même temps??
Pas., je n'ai pas d'autres feuilles ouvrir
Vous pourriez avoir les classeurs ouverts en arrière-plan (pas visible).
rien dans le
vérifier le gestionnaire des tâches pour les autres instances d'excel.
Pas., je n'ai pas d'autres feuilles ouvrir
Vous pourriez avoir les classeurs ouverts en arrière-plan (pas visible).
rien dans le
Workbook_BeforeClose()
événement?vérifier le gestionnaire des tâches pour les autres instances d'excel.
OriginalL'auteur logan | 2013-09-11
Vous devez vous connecter pour publier un commentaire.
J'ai eu ce problème et je l'ai résolu en mettant dans la
Workbook_BeforeClose()
:Ne pas résoudre le problème
OriginalL'auteur FranckH
supprimer la
Application.DisplayAlerts = True
de la routine.de l'aide pour
Application.Quit Method
:Cela permettra d'éviter tout (éventuellement cachée) invites à partir de l'arrêt de excel de se fermer complètement
OriginalL'auteur SeanC
La fenêtre ne se ferme pas parce que vous êtes à l'aide de personnels.xlsb. Personnelle De Coupe.xlsb et la coller dans un autre emplacement.
Au lieu de Personnels.xlsb créer et de travailler sur les modules. C'est une meilleure option.
OriginalL'auteur Tomek B.
"ThisWorkbook.Saved = True" après "de l'Application.Quitter" fonctionne sur Excel 2016
OriginalL'auteur Tristan Molinié
C'est étrange, j'espère que quelqu'un va trouver cette réponse utile. Je suis tombé sur quelque chose de très similaire à l'aide d'Excel 2010 (14.0). Je suis tombé de ma réponse par le biais de l'expérimentation. C'est une mauvaise réponse pour usage général.
Pour quelque raison que ce soit de l'Application.Quittez échoue silencieusement si l'option AccessVBOM n'est pas activé. Il n'est pas permis de sortir de la boîte et peut-être définir/annuler par votre administrateur réseau par windows de la politique.
Vous pouvez trouver cette option dans l'interface graphique en parcourant "Options Excel" -> "Centre de gestion" -> "Centre de gestion de Paramètres" - > "Paramètres des Macros" -> "la Confiance de l'accès à l'objet du projet VBA modèle". Ou par programmation.
.
Puisque nous aimons tous le code, dans cet exemple, nous exécutez Excel à partir de C# de l'interopérabilité et de l'appel de la quitter la fonction.
Application.Quit()
méthode en VBA, c'est purement pour permettre l'accès à la VBIDE et VBProject modèles d'objet. C'est potentiellement dangereux si l'option est activée pour aucune bonne raison et c'est pourquoi il est délibérément caché à l'intérieur de la boîte de dialogue paramètres. Aussi la question n'a rien à voir avec C#.NET et/ou du Bureau de l'interopérabilitéNe pas résoudre le problème
OriginalL'auteur Cheng Tsai
Ont passé MacroName de fichier bat et j'ai essayé le code ci-dessous son travail. Mais une chose que j'ai observé est de savoir si nous sommes à la fermeture du classeur(ActiveWorkbook.Près) avant l'Application.Quittez ensuite, il n'est pas de travail.
OriginalL'auteur ram
Assurez-vous que vos draps n'ont pas un lien externe références, en particulier les liens cassés.
J'ai du mal avec ce problème depuis plus d'une semaine, la réécriture et commentant beaucoup de code pour essayer d'isoler le problème. Je l'ai enfin fait un examen de toutes les tables externes et les références à des feuilles dans mon classeur, ce matin. J'ai supprimé tous les liens inutiles et brisé les références et le classeur maintenant ferme, sans retomber dans la mémoire.
OriginalL'auteur Joel Mazza