VBA ne ferme pas les projets

K

K@d

Guest
Salut à tous les Xliens et Xlienes,

une petite question un peu particulière mais avancée : lorsque je ferme mes classeurs, tous les dossiers VBA associés (modules, userforms et class modules) demeurent ouverts !!!

Ainsi, si je referme et que je ré-ouvre quatre fois le même classeur, j'aurai 4 fois le même projet sous VBA : modifier le bon code devient ainsi du hasard car j'ai accès à tous les projets, aucune erreur de lecture (même quand le classeur source est fermé d'ailleurs).

J'ai de nombreux Add-ins et des menus personnalisés qui se lancent à l'ouverture d'Excel et qui à priori n'interviennent pas sur ce problème.

Je ne vois pas du tout d'où vient ce souci pour le moins pénible et l'aide de Microsoft est muette sur ce point... 8'(

Si vous avez une idée, merci d'avance pour votre aide ! :0)

Clément
 
T

Ti

Guest
ce problème effectivement pénible a été le motif de mon premier post sur XLD, il y a déjà quelque temps ! Je le considère comme un vrai bug d'Excel dans toutes ses versions et cela tient à ce que tu as modifié la propriété EnvelopeVisible de ton fichier.

Dès lors, à chaque ouverture du fichier, tu dois spécifier :
Thisworkbook.EnvelopeVisible = True
Thisworkbook.EnvelopeVisible = False
(je mets ça de tête, j'espère que c'est une propriété de niveau classeur...). Alors seulement tes fichiers disparaitront bien de la liste des fichiers VBA.

Ces deux lignes peuvent être placées dans un workbook.open.
 
@

@+Thierry

Guest
Salut Clément, le Forum

Tu travailles sous quel OS et Version d'Excel ? Je n'ai jamais vu un tel "sbinz"... C'est vraiment anormal.

Es-tu certain de ne pas avoir copié ces modules dans une XLA qui se lance à ton insu ?

A mon avis, il y a vraiment un problème de ce coté là... Si tu arrives à voir par l'Explorateur de Projets (CTRL + R) plusieurs fois exactement le même Projet je ne m'explique pas ce miracle (enfin ce bug, plutôt)

Bon Courage
@+Thierry
 
@

@+Thierry

Guest
Re Bonjour Ti,

Je ne t'avais pas vu pendant que je maltraîtais mon Excel pour essayer de simuller le contexte du problème de Clément...

"EnvelopeVisible" Property, tu dis, jamais utilisé, et donc pas près de le faire !!! lol

Merci à Toi
Bon Aprèm
@+Thierry
 
K

K@d

Guest
Bonjour Ti, @+Thierry,

merci pour vos réponses si rapides ; je n'ai jamais entendu parler de cette propriété en effet et je ne vois malheureusement pas comment j'ai pu la modifier... Je vais essayer de voir si l'insertion de ces lignes change quelque chose mais je croise les doigts tellement je galère avec ça depuis quelque temps.
Je tourne actuellement sur Excel 2002 (ou XP pour ceux qui préfèrent)
Note : j'ai également essayé de reproduire le problème sur un des mes autres PC (Xl 2000 & XP), je n'ai pas réussi mais un conseil, évitez ! Vivement qu'un p'tit gars de chez Microsoft se penche dessus parce que là...

Merci encore et à bientôt sur le forum ! :0)

Clément
 
K

K@d

Guest
Re -,

heu... J'ai quelques problèmes apparement ; après un coup d'oeil dans l'aide, celle-ci me dit que la propriété 'EnvelopeVisible' concerne le titre des mails [...] m'enfin passons...

Placés dans le Workbook.open, Excel me renvoie une erreur '1004 Méthode EnvelopeVisible of object failed'.

Une idée ? Help again please !!! 8'(

Clément
 
@

@Christophe@

Guest
Bonjour à tous,

Voila les plus grand réuni; @Thierry et Ti (un grand bonjour à vous les amis)

Clément, vérifie que tes add-in ne fond pas références à une feuille dans ton classeur à fermer! Dès que les références sont rompuent ton project VBA devrait disparaitre.


Bonne journée

@Christophe@
 
T

Ti

Guest
non je maintiens, c'est bien l'envelopevisible qui pose ce problème. Dès que je suis de retour à la maison ce soir, je trouverai la syntaxe exacte que j'utilise.
A noter que j'ai déjà eu le problème, sans avoir jamais touché cette propriété EnvelopeVisible dans certains fichiers, mais des semaines de recherches (et j'étais bien isolé parce que je n'ai jamais trouvé aucune doc la-dessus) m'ont montré qu'en mettant l'envelopeVisible à True puis False dans le Workbook.Open faisait que le fichier soit correctement fermé ensuite.
Malheureusement, quand on l'a fait une fois sur un fichier, il faut le faire toujours...

A ce propos la propriété EnvelopeVisible, ça signifie simplement qu'on a utilisé le menu Fichiers...Envoyer vers... Destinataire (c'est l'interface IE qu'on voit depuis Excel quand on veut envoyer une feuille en pièce jointe).
En général on ne voit rien par la suite parce qu'on n'est pas toujours dans l'éditeur VBA sauf... si on passe plus de temps dans celui-ci que dans l'interface d'Excel (ce qui est souvent mon cas)
 
T

Ti

Guest
voilà, j'ai retrouvé la procédure que j'utilise :

Private Sub Workbook_Open()
Application.ScreenUpdating = False
ActiveWorkbook.EnvelopeVisible = True
ActiveWorkbook.EnvelopeVisible = False
Application.ScreenUpdating = True
End Sub

En relisant les différents posts que j'ai pu échanger sur ce sujet (on peut les trouver avec le mot clé EnvelopeVisible) je me souviens que certains fichiers un peu corrompus peuvent présenter ce problème, même si on n'a jamais utilisé EnvelopeVisible.

Il m'est déjà arrivé de recréer certains fichiers tout neufs pour supprimer ce truc. Dans ce cas, il ne suffit pas de recopier les feuilles du vieux vers le nouveau fichier, il faut partir d'un fichier vierge et faire un copie/coller des cellules, ce qui peut évidemment poser quelques problèmes (mise en forme etc.) mais c'est une solution qui peut éviter d'avoir à inclure la macro ci-dessus.

Cependant, mon principe c'est que, si c'est arrivé une fois, ça peut recommencer, alors personnellement je mettrai la procédure ci-dessus quand même
 
K

K@d

Guest
Bonjour Ti,

je viens de lire attentivement tes réponses et j'en prends bien note ; malgré de nombreuses recherches, je n'ai effectivement trouvé que très peu d'aide sur ce sujet et malheureusement tous mes classeurs sont affectés (depuis peu d'ailleurs) ou presque.
Etant donné que je passe aussi beaucoup de mon temps à faire du code, il ne m'est pas pensable de refaire tous les classeurs... 8'(

Je vais essayer de mettre en place cette solution et je pense avoir une idée sur l'Add-in qui aurait pu me mettre la bazar là-dedans.

Merci encore pour le temps que tu as pris pour me répondre en espérant ne pas retrouver des bugs de cette taille de sitôt !

Bonne continuation ! :0)

Clément
 

Discussions similaires

Statistiques des forums

Discussions
312 563
Messages
2 089 681
Membres
104 252
dernier inscrit
dbsromaric