Bonjour eliya,
Tu utilises 2 variables qui stockent la même information:
L = Sheets("Fournisseurs").Range("a65536").End(xlUp).Row + 1
derligne = Sheets("Fournisseurs").Range("a65536").End(xlUp).Row + 1
Ces deux variables font la même chose, et ne sont jamais incrémentées.
For Each Ctrl In UserForm3.Controls
r = Val(Ctrl.Tag)
If r > 0 Then Sheet3.Cells(derligne, r) = Ctrl
Next
boucle sans aucune incrémentation, tu réécris x fois la même cellule. Es-ce normal? Es-ce ici qu'il faut l'incrémentation? à toi de nous le dire ^^
Sans ces informations et sans fichier, il sera impossible de t'aider d'avantage, donc