Bouton de commande et claaseur partagé

Luigi

XLDnaute Occasionnel
Bonjour à vous tous,
J’ai un classeur sous Excel 2007 qui utilise des macros. Dans ce fichier il y a des boutons de commande qui change de couleur en cliquant dessus ( ok vert ; amélioré jaune).
Le bouton en lui-même fonctionne très bien, mais j’ai mis le classeur en partage sur 2 postes (poste A et poste B) et là j’ai des problèmes. Je m’explique :
Sur le poste A en cliquant sur bouton la couleur change normalement.
Sur le poste B la couleur du bouton de change pas et inversement même si le classeur a été enregistré au préalable. Pour que la couleur change, il faut d’abord fermer le classeur, puis l’ouvrir à nouveau, c’est assez contraignant.
Quelqu’un aurait-il une solution remédié à mon problème.
D’avance je vous remercie.
 

tototiti2008

XLDnaute Barbatruc
Re : Bouton de commande et claaseur partagé

Bonjour Luigi,

C'est un comportement bizarre, en effet
Il est malheureusement connu que partage et macro font très mauvais ménage, de nombreuses commande VBA ne fonctionnent pas sur un classeur partagé
Sur ce problème particulier, pas d'idée comme ça... peut-être un bout de code associé à tes boutons ?
 

Luigi

XLDnaute Occasionnel
Re : Bouton de commande et claaseur partagé

ci-dessous le code associé au bouton

Private Sub Button_Op2012_CU2_Click()

With Button_Op2012_CU2

If ActiveSheet.Button_Op2012_CU2.Caption = "OK" Then

.Object.Caption = "Amélioration"
.Object.BackColor = &H80FFFF


ElseIf ActiveSheet.Button_Op2012_CU2.Caption = "Amélioration" Then

.Object.Caption = "OK"
.Object.BackColor = &HFF00&

End If
End With
End Sub
 

Luigi

XLDnaute Occasionnel
Re : Bouton de commande et claaseur partagé

Merci pour test,

Mais même en mettant "DoEvents" cela ne fonctionne pas. Sur mon poste le bouton change de couleur, mais sur le poste de mon collègue qui à le classeur ouvert en partage le bouton ne change pas de couleur.
 

Si...

XLDnaute Barbatruc
Re : Bouton de commande et claaseur partagé

Salut

et en essayant de simplifier ton code comme suit ?
Code:
Private Sub Button_Op2012_CU2_Click()
  With Me.Button_Op2012_CU2
    If .Caption = "OK" Then
      .Caption = "Amélioration"
      .BackColor = &H80FFFF
    ElseIf .Caption = "Amélioration" Then
      .Caption = "OK"
      .BackColor = &HFF00&
    End If
  End With
End Sub
 

Discussions similaires

Réponses
1
Affichages
361
Compte Supprimé 979
C
Réponses
12
Affichages
456

Statistiques des forums

Discussions
312 228
Messages
2 086 421
Membres
103 206
dernier inscrit
diambote