"éffacement" bouton barre outil liés à un classeur

charette63

XLDnaute Occasionnel
Bonjour,

à l'ouverture d'un classeur excel nommé "fiche perso nursing ...." (les petits points remplace une donnée variable (mois année)) un bouton s'active automatiquement dans la barre d'outil et se ferme lorsque le classeur est fermé. Vu que plusieurs classeurs "fiche perso nursing ...." peuvent etre ouverts en même temps, une bonne âme ma transmis ce code pour que le bouton ne se ferme qu'après la fermeture du dernier classeur du nom.

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim NB_classeurs As Integer
Dim Nom_classeur As String
Dim X As Integer
NB_classeurs = Application.Workbooks.Count

'teste si d'autres classeurs sont ouverts
If NB_classeurs > 1 Then
'boulce pour lire le nom de chaque classseur ouvert
For X = 1 To NB_classeurs
'nom du classeur n
Nom_classeur = Workbooks(X).Name
' teste si commence par la chaine "horaire nursing"
' Si oui ...alors je sors ^^

If Left(Nom_classeur, 19) = "fiche perso nursing" Then
Exit Sub
End If
Next
End If

Application.CommandBars("perso nursing").Visible = False

End Sub

Le problème est que le bouton ne se ferme pas si un classeur d'un autre nom est ouvert. Je suis donc à la recherche d'un bout de code qui rendrait exclusive la macro si dessus au classeurs "fiche perso nursing ...."

J'espere que mon explication est suffisement claire

merci pour votre aide
 
Dernière édition:

Hippolite

XLDnaute Accro
Re : "éffacement" bouton barre outil liés à un classeur

Bonjour,
Il faut supprimer le classeur actif de la boucle sinon il se trouve lui-même et ne ferme pas le bouton :
Remplacer :
Code:
If Left(Nom_classeur, 19) = "fiche perso nursing" Then
par :
Code:
If Left(Nom_classeur, 19) = "fiche perso nursing" And _
Nom_classeur <> Thisworkbook.Name Then
A+
 
Dernière édition:

charette63

XLDnaute Occasionnel
Re : "éffacement" bouton barre outil liés à un classeur

bonjour Hippolite,

merci de t'interresser à mon sujet, désolé, ton code ne change rien à mon problème.

Je vais essayer d'expliquer mon problème plus précisement,

--le bouton "perso nursing" s'ouvre dès que un classeur nommé:"fiche perso nursing ...." est ouvert.

--le bouton doit (et c'est le cas) rester ouvert tant qu'un classeur "fiche perso nursing ...." est ouvert, et se fermer lors de la fermeture du dernier classeur "fiche perso nursing ...." (il est possible que je travaille sur plusieurs classeurs "fiche perso nursing ..." en même temps) (je me repete, avec le code actuel, ça fonctionne à merveille.

--le problème, c'est lorsqu'un classeur excel d'un autre nom est ouvert, le bouton ne disparait pas quand je ferme le dernier classeur "fiche perso nursing ...."

j'espere que l'explication est suffisament claire

cordialement
 

Discussions similaires

Statistiques des forums

Discussions
312 302
Messages
2 087 041
Membres
103 439
dernier inscrit
julienpipiou