Problème codeVBA Formulaire

Bonjour,

Je suis en train d'essayer de mettre en place un registre unique du personnel avec une fonction formulaire. Le problème c'est que je suis novice dans le domaine et je n'arrive pas à trouver où j'ai pu faire une erreur dans le code. Si quelqu'un pouvez m'éclairer, j'ai une erreur "1004"sur :
derligne = .Range("A65536").End(x1up).Row + 1

dans le code suivant :
Private Sub CommandButton1_Click()
Dim Ctrl As Control
Dim r As Integer
Dim t As Integer
Dim derligne As Integer

With Worksheets("contrats")
derligne = .Range("A65536").End(x1up).Row + 1
For Each Ctrl In UserForm1.Controls
r = Val(Ctrl.Tag)
If r > 0 Then contrats.Cells(derligne, r) = Ctrl
Next
End With
TextBox1 = ""
End

End Sub

Je suis en train de craquer HELP ! Merci d'avance.

2 réponses

  1. Contributeur
    bonjour

    faute de frappe !
    remplacle 1 par un l (Lminuscule) End(x1up). par End(xlup).
    0
    1. Merci,
      maintenant j'ai une erreur "424' sur le :
      If r > 0 Then contrats.Cells(derligne, r) = Ctrl

      Pourvu que ce soit la dernière...

      une solution?

      Merci d'avance
      0
    2. contrats ne correspond à rien.
      Essaie
       If r > 0 Then .Cells(derligne, r) = Ctrl 

      L'utilisation de With équivaut à
      If r > 0 Then Worksheets("contrats").Cells(derligne, r) = Ctrl 
      0