Option Explicit
Private Sub cmb_ok_Click()
Dim Nlig As Integer, i As Integer, Add As Integer, Div As Integer, Test As Integer
Dim Pl() As Single
Dim Num() As Integer
Dim Cnt As Control
Dim Idx As Byte
Dim Result
Dim vb As Boolean
Unload UserForm1
If Cells(8, 1) = "" Then
Nlig = 8
Else
Nlig = Cells(Rows.Count, 1).End(xlUp)(2).Row
End If
ReDim Num(1 To 14)
Num(1) = 11: Num(2) = 89: Num(3) = 73: Num(4) = 13: Num(5) = 11: Num(6) = 10: Num(7) = 10
Num(8) = 30: Num(9) = 89: Num(10) = 989: Num(11) = 304: Num(12) = 76: Num(13) = 18: Num(14) = 30
Div = 60
Add = 480
ReDim Pl(1 To 14)
For Each Cnt In Me.Controls
If TypeOf Cnt Is MSForms.ComboBox Then
Idx = Val(Right(Cnt.Name, Len(Cnt.Name) - 8))
If Idx <= 10 Then
Test = Val(Controls("ComboBox" & Idx + 10).Value)
Select Case Val(Cnt.Value)
Case 1, 2, 7, 9, 10, 12
If Test = 430 Then vb = True
Case 3 To 6, 8, 11, 13, 14
If Test = 600 Then vb = True
Case Else
End Select
If vb = True Then Pl(Val(Cnt.Value)) = Val(Controls("TextBox" & Idx).Value) * Val(Controls("TextBox" & Idx + 10).Value) / (Num(Cnt.Value) / Div) + 480
vb = False
End If
End If
Next Cnt
Result = 0
For i = 1 To 14
Result = Result + Pl(i)
Next i
Cells(Nlig, 9) = Result
Cells(Nlig, 9) = Format(Cells(Nlig, 9), ".")
End Sub