XL 2010 probleme execution macro achaque creation de bouton

bredeche

XLDnaute Occasionnel
bonjour
a chaque validation d'un userform je crée un bouton
"code de création de bouton"
Sub CreationBouton()
For i = 9 To Sheets("TABLEAU RECAP").Range("B65536").End(xlUp).Row
Sheets("TABLEAU RECAP").Buttons.Add(Range("T" & i).Left, Range("T" & i).Top, Range("T" & i).Width * 1, Range("T" & i).Height).Select
Selection.Characters.Text = "VALIDATION"
Selection.OnAction = "'appelvalid " & i & " '"
Next
End Sub

cela sa marche ,a cela dès que je clique sur le bouton crée dans le "tableau recap" mon userform3 ne ouvre pas mon code est le suivant


Sub appelvalid()
UserForm3.Show
End Sub

trouvez ci dessous le code de mon userform3

Private Sub CommandButton1_Click()

Dim L1 As Integer
Dim ds As Worksheet

'protection feuille
Dim cell As Range

Worksheets("TABLEAU RECAP").Unprotect ("cedric")


With ThisWorkbook.Worksheets("TABLEAU RECAP")
L1 = .Cells(.Rows.Count, 2).End(xlUp).Row + 0


.Range("U" & L1).Value = ComboBox1 'NON DU RESPONSABLE'


Worksheets("TABLEAU RECAP").Protect ("cedric"), DrawingObjects:=True, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True
End With
End Sub

pouvez vous m'aidez
 

Theze

XLDnaute Occasionnel
Bonjour,

Voici un exemple !
Si tu veux passer un ou plusieurs argument dans OnAction, il te faut utiliser les apostrophes et tripler les guillemets selon le type de l'argument, si tu veux simplement appeler une macro sans argument, les apostrophes sont inutiles. Dans le code ci-dessous supprime ce qui ne t'est pas utile :
Code:
Sub CreationBouton()

    Dim I As Integer
   
    For I = 9 To Sheets("TABLEAU RECAP").Range("B65536").End(xlUp).Row
       
        Sheets("TABLEAU RECAP").Buttons.Add(Range("T" & I).Left, Range("T" & I).Top, Range("T" & I).Width * 1, Range("T" & I).Height).Select
       
        Selection.Characters.Text = "VALIDATION"
       
        'ici avec un argument passée :
        'Attention, il faut tripler les guillemets pour les arguments String, Double, Single, Date et Boolean
        Selection.OnAction = "'appelvalid """ & I & "'"
       
        'ici, sans aucun argument (abscence des apostrophes)
        Selection.OnAction = "appelvalid"
       
    Next I
   
End Sub

'cela sa marche ,a cela dès que je clique sur le bouton crée dans le "tableau recap" mon userform3 ne ouvre pas mon code est le suivant
Sub appelvalid(I As Integer) 'avec un argument

    MsgBox I 'pour le test
   
    UserForm3.Show

End Sub

Sub appelvalid() 'sans argument
   
    UserForm3.Show
   
End Sub
 

Discussions similaires

Réponses
7
Affichages
321

Statistiques des forums

Discussions
312 199
Messages
2 086 159
Membres
103 140
dernier inscrit
gwendoline.renou@hotmail.