Pour transférer des données dans une feuille après les avoir saisies dans un formulaire, j'utilise la procédure suivante :
Private Sub CommandButton1_Click()
derlig = [A65000].End(xlUp).Row + 1
For i = 1 To 32
Cells(derlig, i) = Me.Controls("TextBox" & i)
Next i
End Sub
Le pb est que "TextBox"&i (zone de texte indexée) transfert du texte, y compris pour les nombres. Certes dans la feuille, je peux les convertir, mais n'y a-t-il pas un moyen de conserver le format nombre lors du transfert ?
Merci aux experts qui nous font profiter de leur savoir.
Pierre
Re : Transfert de données à partir d'un formulaire
Bonjour PdePouldon et le forum,
Tu peux utiliser les fonctions de conversion de types de données :
CDbl(Expression) ' Convertit le résultat en valeur de type Double.
Dans ton cas :
Private Sub CommandButton1_Click()
derlig = [A65000].End(xlUp).Row + 1
For i = 1 To 32
Cells(derlig, i) = CDbl(Me.Controls("TextBox" & i))
Next i
End Sub
Re : Transfert de données à partir d'un formulaire
Bonsoir,
Bonsoir, CBernardT
si tes textbox comportent des nombres et du texte, tu peux essayer ainsi :
Code:
For i = 1 To 32
If IsNumeric(Me.Controls("TextBox" & i)) Then
Cells(i, 1) = Me.Controls("TextBox" & i) * 1
Else
Cells(i, 1) = Me.Controls("TextBox" & i)
End If
Next