Bonjour
et moi je préfère le select case a voir
'derligne devient la ligne qui suit la derniere valeur du tableau
With Sheets("BDD_licencies")
derligne = .Range("A" & Rows.Count).End(xlUp).Row + 1
'balaye les control un par un avnt le for .... next
For Each Ctrl In UserForm1.Controls
derligne = .Range("A65000").End(xlUp).Row + 1
' la valeur de "colonne" est egale a la valeur du tag de controle
Colonne = Val(Ctrl.Tag)
'si la valeur du tag>0 l'intersection N) de derligne et N? de colonne
' est une cellule qui contiendra la valeur "ctrl" cad celle contenu dans le controle
If Colonne > 0 Then
Select Case Colonne
Case 7 ' Format date
.Cells(derligne, Colonne) = CDate(Ctrl)
Case 19, 20, 21 ' Format numérique
.Cells(derligne, Colonne) = Val(Replace(Ctrl, ",", "."))
Case Else
.Cells(derligne, Colonne) = Ctrl
End Select
'Sheets("BDD_licencies").Cells(derligne, Colonne) = Ctrl
End If
' next ---> on passe au controle suivent
Next
End With
attention a la date elle doit être obligatoire
A+
Maurice