1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
Dim i As Integer
Dim n As Integer
Dim nbVirgule As Integer
Dim nbPoint As Integer
'Empêcher de saisir du texte et avertir d'une mauvaise saisie (lien avec module de classe)
Dim txtBox(1 To 12) As New Classe1 'Pour 12 TextBox
Private Sub UserForm_Initialize()
Dim n, x As Integer
Dim ctrl As Control
'Pour les 12 premiers
For Each ctrl In Controls
For n = 1 To 12
If ctrl.Name = "TextBox" & n Then
x = x + 1
Set txtBox(x).txtBox = ctrl
End If
Next n
Next
End Sub
'Obliger à saisir toutes les cases vides lors de la validation du USF (si case vide alors mettre un zéro)
Private Sub Cmd1_click()
For i = 1 To 12
If Me.Controls("TextBox" & i) = "" Then MsgBox "Case" & i & "vide" & vbNewLine & "si vide mettre un 0": Exit Sub
Next i
'Envoyer le contenu des textbox vers les cellules excel en acceptant les calculs avec virgules et points
Range("A1") = Val(Replace(Me.TextBox1, ",", "."))
Range("A2") = Val(Replace(Me.TextBox2, ",", "."))
Range("A3") = Val(Replace(Me.TextBox3, ",", "."))
Range("A4") = Val(Replace(Me.TextBox4, ",", "."))
Range("A5") = Val(Replace(Me.TextBox5, ",", "."))
Range("A6") = Val(Replace(Me.TextBox6, ",", "."))
Range("A7") = Val(Replace(Me.TextBox7, ",", "."))
Range("A8") = Val(Replace(Me.TextBox8, ",", "."))
Range("A9") = Val(Replace(Me.TextBox9, ",", "."))
Range("A10") = Val(Replace(Me.TextBox10, ",", "."))
Range("A11") = Val(Replace(Me.TextBox11, ",", "."))
Range("A12") = Val(Replace(Me.TextBox12, ",", "."))
Label1 = Range("A13")
End Sub |
Partager