Il y a en tous cas une erreur sur cette ligne de code.
Code:
derligne = .Range("A65536").End(xlUp.Row) + 1
Plutôt comme ça...
Code:
derligne = .Range("A65536").End(xlUp).Row + 1
Pour le reste je ne comprends pas...
Si c'est pour passer la valeur du TextBox1 sur la ligne suivante à chaque validation, je verrais plutôt un truc comme ça...
Code:
With Worksheets("feuil1")
derligne = .Range("A65536").End(xlUp).Row + 1
For Each ctrl In UserForm1.Controls
If TextBox1.Value > 0 Then Feuil1.Cells(derligne, 1) = TextBox1.Value
Next
End With