Problème de Macro

Résolu
Bonjour,

Je suis en train de créer un userform afin d'insérer un nom, un prénom, une date d'entrée et une raison sur chaque ligne .

J'ai créer l'userform et quand je rentre cette macro pour le bouton VALIDER il me marque que "(1xUp) " n'est pas défini

Quelqu'un peut-il m'aider à comprendre ?
Voici ma macro

Private Sub CommandButton1_Click()

Dim Ctrl As Control
Dim r As Integer
Dim t As Integer
Dim derligne As Integer

With Worksheets("Feuil1")
derligne = .Range("1048576").End(x1Up).Row + 1

For Each Ctrl In UserForm1.Controls

r = valeur(Ctrl.Tag)

If r > 0 Then Feuil1.Cells(derligne, r) = Ctrl
Next
End With

TextBox1 = ""
End

End Sub

Merci d'avance à vous

6 réponses

  1. Re,

    Petit soucis, j'ai regarde le code de la userform2 alors que c'est la userform1 que vous lancez.

    Si vous voulez utiliser les tags des controles, faut pas oublier d'ecrire quelque chose dedans les proporietes Tag

    A+
    1. Bonjour,

      JE suis novice en VBA et là je ne comprend pas trop :(

      ok pour la 1ère erreur

      mais si je lui demande d'écrire sur ma dernière ligne dispo avec IF pourquoi maintenant plus rien n'est écrit ??
      1. Bonjour,

        Vous n'aviez pas qu'une erreur de code dans ce que vous aviez demander.

        r = "valeur" = (Ctrl.Tag)--------------------->r = Val(Ctrl.Tag)

        et
        cette ligne vous permettez d'ecrire au moins quelque chose
        If r > 0 Then .Cells(derligne, r) = Ctrl

        mais maintenant vous n'avez aucune ligne de code qui ecrive sur votre feuille!!!!!!!!!

        A+
        1. Bonjour,

          Merci mais mon problème à changer maintenant, le code à l'air de s'exécuter correctement par contre quand je rempli mes champs sur le questionnaire, rien ne se met sur l'onglet : Feuil1 comme demandé.

          Ci joint le fichier : http://cjoint.com/?CFhlX4VtDzQ

          Merci d'avance
          1. Bonjour,

            ceci devrait aller,

            Private Sub CommandButton1_Click()
                Dim Ctrl As Control
                Dim r As Integer
                Dim t As Integer
                Dim derligne As Integer
            
                With Worksheets("Feuil1")
                    derligne = .Range("A1048576").End(xlUp).Row + 1
                    For Each Ctrl In UserForm1.Controls
                        r = Val(Ctrl.Tag)
                        If r > 0 Then .Cells(derligne, r) = Ctrl
                    Next Ctrl
                End With
            
                TextBox1 = ""
            End Sub
            


            Bonne suite