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
à 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: