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. 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
    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,

        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,

          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. 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+