Option Explicit
Private Sub CommandButton1_Click()
'
'----------------------------
Dim DerLign As Range
'----------------------------
Dim Cel As Range
'----------------------------
Dim i As Byte
Dim l As Byte
'----------------------------
Dim OldCalculation As Long
'----------------------------
Dim Tableau() As Variant
'----------------------------
'
With Application
OldCalculation = .Calculation
.Calculation = xlCalculationManual
.ScreenUpdating = True
End With
Set DerLign = Sheets("Database").Range("a65536").End(xlUp)
If TextBox63 = "" Then
MsgBox ("Il faut indiquer le nb de jours")
Exit Sub
End If
l = TextBox63.Value
ReDim Tableau(1 To l, 1 To 5)
With Me
For i = 1 To l
If i = 1 Then
Tableau(i, 1) = DerLign + 1
Else
Tableau(i, 1) = Tableau(i - 1, 1) + 1
End If
Tableau(i, 2) = CDbl(.Controls("TextBox" & i))
Tableau(i, 3) = CDbl(.Controls("TextBox" & i + 31))
Tableau(i, 4) = Tableau(i, 2) + Tableau(i, 3)
Tableau(i, 5) = Tableau(i, 4) * 160#
Next i
End With
DerLign.Offset(1, 0).Resize(UBound(Tableau, 1), UBound(Tableau, 2)) = Tableau
With Sheets("Recap")
On Error Resume Next
Set Cel = .Range("E:E").Find(Tableau(1, 1), .Range("E1"), xlFormulas, _
xlWhole, xlByColumns, xlNext, False).EntireRow.Calculate
If Err <> 0 Then
Err.Clear
Else
Call MajGraph.MajGraph
End If
End With
On Error GoTo 0
With Application
.Calculation = OldCalculation
.ScreenUpdating = True
End With
End Sub