Re,
Remplace la procédure Export par celle-ci :
Sub Export()
Dim CTRL As Control 'déclare la variable CTRL (ConTRôLe)
For Each CTRL In UserForm1.Controls 'boucle sur tous les contrôle CTRL de l'UserForm en cours
If CTRL.Tag <> "" Then 'condition : si la propriété [Tag] du contrôle n'est pas vide
Select Case CTRL.Name 'agit en fonction du nom du contrôle
Case "OptionButton1" 'cas "OptionButton1"
If CTRL.Value = True Then O.Cells(LR, CTRL.Tag).Value = 1 Else O.Cells(LR, CTRL.Tag).Value = "" 'si l'option est cochée, renvoie 1 dans la cellule ligne : LR, colonne : propriété [Tag] du contrôle, sinon vide la cellule
Case "OptionButton2" 'cas "OptionButton2"
If CTRL.Value = True Then O.Cells(LR, CTRL.Tag).Value = 1 Else O.Cells(LR, CTRL.Tag).Value = "" 'si l'option est cochée, renvoie 1 dans la cellule ligne : LR, colonne : propriété [Tag] du contrôle, sinon vide la cellule
Case "OptionButton3" 'cas "OptionButton3"
If CTRL.Value = True Then O.Cells(LR, CTRL.Tag).Value = 65 Else O.Cells(LR, CTRL.Tag).Value = "" 'si l'option est cochée, renvoie 65 dans la cellule ligne : LR, colonne : propriété [Tag] du contrôle, sinon vide la cellule
Case "OptionButton4" 'cas "OptionButton4"
If CTRL.Value = True Then O.Cells(LR, CTRL.Tag).Value = 50 Else O.Cells(LR, CTRL.Tag).Value = "" 'si l'option est cochée, renvoie 50 dans la cellule ligne : LR, colonne : propriété [Tag] du contrôle, sinon vide la cellule
Case "TextBox2", "TextBox3", "TextBox7" 'cas "TextBox3" et "Textbox7"
'renvoie la valeur du contrôle avec la première lettre en majuscule dans la cellule ligne : LR, colonne : propriété [Tag] du contrôle
O.Cells(LR, CTRL.Tag).Value = Application.WorksheetFunction.Proper(CTRL.Value)
Case "TextBox4" 'cas "TextBox4" (pour éviter les jours et les mois inversés)
'renvoie la valeur du contrôle sous forme de numéro de date sérial dans la cellule ligne : LR, colonne : propriété [Tag] du contrôle
If CTRL.Value <> "" Then O.Cells(LR, CTRL.Tag).Value = DateSerial(Year(CTRL.Value), Month(CTRL.Value), Day(CTRL.Value))
Case "TextBox9" 'cas "TextBox9"
'renvoie la valeur du contrôle au format numéro de téléphone dans la cellule ligne : LR, colonne : propriété [Tag] du contrôle
O.Cells(LR, CTRL.Tag).Value = Format(CTRL.Value, "0#"" ""##"" ""##"" ""##"" ""##")
Case Else 'tous les autres cas
'renvoie la valeur du contrôle dans la cellule ligne : LR, colonne : propriété [Tag] du contrôle
O.Cells(LR, CTRL.Tag).Value = CTRL.Value
End Select 'fin de l'action en fonction du nom du contrôle
End If 'fon de la condition
Next CTRL 'prochain contrôle de la boucle
End Sub