Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Bouton2

7 réponses
Avatar
pb
J'ai oublié de préciser que c'est un bouton formulaire.
Merci

7 réponses

Avatar
MichDenis
Bonjour Pb,

Dans la macro que tu as affectée au bouton de commande émanant
de la barre d'outils formulaire, tu peux utiliser ces 2 lignes de code

Dim x As String

Cette ligne de code permet de trouver la propriété "Name" (nom) du bouton
x = Feuil1.Shapes(Application.Caller).OLEFormat.Object.Name

Celle-ci te permet de désactiver le bouton.
Feuil1.Shapes(x).OLEFormat.Object.Enabled = False

N'oublie pas de de réactiver tes boutons au moment opportun !






"pb" a écrit dans le message de groupe de discussion :

J'ai oublié de préciser que c'est un bouton formulaire.
Merci
Avatar
pb
Un grand Merci, car je bidouillais un truc pas propre pour planquer le
bouton après traitement.

Pascal
"MichDenis" a écrit dans le message de news:

Bonjour Pb,

Dans la macro que tu as affectée au bouton de commande émanant
de la barre d'outils formulaire, tu peux utiliser ces 2 lignes de code

Dim x As String

Cette ligne de code permet de trouver la propriété "Name" (nom) du bouton
x = Feuil1.Shapes(Application.Caller).OLEFormat.Object.Name

Celle-ci te permet de désactiver le bouton.
Feuil1.Shapes(x).OLEFormat.Object.Enabled = False

N'oublie pas de de réactiver tes boutons au moment opportun !






"pb" a écrit dans le message de groupe de discussion :

J'ai oublié de préciser que c'est un bouton formulaire.
Merci




Avatar
pb
Je cherche mais je ne trouve pas comment les réactiver sur
Private Sub Workbook_Open()

Cela me renvoie un message d'érreur?
"MichDenis" a écrit dans le message de news:

Bonjour Pb,

Dans la macro que tu as affectée au bouton de commande émanant
de la barre d'outils formulaire, tu peux utiliser ces 2 lignes de code

Dim x As String

Cette ligne de code permet de trouver la propriété "Name" (nom) du bouton
x = Feuil1.Shapes(Application.Caller).OLEFormat.Object.Name

Celle-ci te permet de désactiver le bouton.
Feuil1.Shapes(x).OLEFormat.Object.Enabled = False

N'oublie pas de de réactiver tes boutons au moment opportun !






"pb" a écrit dans le message de groupe de discussion :

J'ai oublié de préciser que c'est un bouton formulaire.
Merci




Avatar
MichDenis
Tu peux appeler cette procédure :

'----------------------------------
Sub test()
Dim Sh As Shape
With Worksheets("Feuil1") 'Adapte le nom de la feuille
For Each Sh In .Shapes
Select Case TypeName(Sh.OLEFormat.Object)
Case Is = "Button"
Sh.OLEFormat.Object.Enabled = True
End Select
Next
End With

End Sub
'----------------------------------



"pb" a écrit dans le message de groupe de discussion :

Je cherche mais je ne trouve pas comment les réactiver sur
Private Sub Workbook_Open()

Cela me renvoie un message d'érreur?
"MichDenis" a écrit dans le message de news:

Bonjour Pb,

Dans la macro que tu as affectée au bouton de commande émanant
de la barre d'outils formulaire, tu peux utiliser ces 2 lignes de code

Dim x As String

Cette ligne de code permet de trouver la propriété "Name" (nom) du bouton
x = Feuil1.Shapes(Application.Caller).OLEFormat.Object.Name

Celle-ci te permet de désactiver le bouton.
Feuil1.Shapes(x).OLEFormat.Object.Enabled = False

N'oublie pas de de réactiver tes boutons au moment opportun !






"pb" a écrit dans le message de groupe de discussion :

J'ai oublié de préciser que c'est un bouton formulaire.
Merci




Avatar
pb
merci,
Mais cela me renvoie un message d'erreur
l'indice n'appartient pas à la selection??

Pascal
"MichDenis" a écrit dans le message de news:

Je te faire remarquer que ceci ne sert absolument à rien
cc = TypeName(Sh.OLEFormat.Object)
et que tu devrais l'enlever !







Avatar
pb
Un peu de fatigue de ma part, j'avais oublié de renommer ma feuille.
Cela fonctionne parfaitement
Merci et bon week-end
Pascal
"MichDenis" a écrit dans le message de news:

Tu peux appeler cette procédure :

'----------------------------------
Sub test()
Dim Sh As Shape
With Worksheets("Feuil1") 'Adapte le nom de la feuille
For Each Sh In .Shapes
Select Case TypeName(Sh.OLEFormat.Object)
Case Is = "Button"
Sh.OLEFormat.Object.Enabled = True
End Select
Next
End With

End Sub
'----------------------------------



"pb" a écrit dans le message de groupe de discussion :

Je cherche mais je ne trouve pas comment les réactiver sur
Private Sub Workbook_Open()

Cela me renvoie un message d'érreur?
"MichDenis" a écrit dans le message de news:

Bonjour Pb,

Dans la macro que tu as affectée au bouton de commande émanant
de la barre d'outils formulaire, tu peux utiliser ces 2 lignes de code

Dim x As String

Cette ligne de code permet de trouver la propriété "Name" (nom) du bouton
x = Feuil1.Shapes(Application.Caller).OLEFormat.Object.Name

Celle-ci te permet de désactiver le bouton.
Feuil1.Shapes(x).OLEFormat.Object.Enabled = False

N'oublie pas de de réactiver tes boutons au moment opportun !






"pb" a écrit dans le message de groupe de discussion :

J'ai oublié de préciser que c'est un bouton formulaire.
Merci








Avatar
MichDenis
As-tu pris soin de modifier le nom de la feuille dans la procédure ?

Voici où le changer avec la note que j'avais mise à côté.

With Worksheets("Feuil1") 'Adapte le nom de la feuille