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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
| Sub Extraction(Fichier As String, _
NbLignes As Long, _
Separateur As Variant)
Dim debut As Date
Dim temps As Date
Dim fin As Date
Dim Counter As Double
Dim tableau() As String
Dim i As Double
Dim ContenuLigne As String
Dim Val_1 As String
Dim Val_2 As String
Dim Val_3 As String
Dim Val_4 As String
Dim Val_5 As String
Dim Val_6 As String
Dim tab_final() As Variant
Dim range_1 As Range
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.DisplayStatusBar = False
ActiveSheet.DisplayPageBreaks = False
Counter = 0
debut = Time
i = TextBox_Nb_Lignes.Value
ReDim tab_final(i, 6)
Open Fichier For Input As #1
Do While Not EOF(1)
Counter = Counter + 1
Line Input #1, ContenuLigne
tableau = Split(ContenuLigne, Separateur)
Val_1 = Mid(tableau(0), 1, 5)
Val_2 = Mid(tableau(3), 1, 5)
Val_3 = Mid(tableau(6), 1, 5)
Val_4 = Mid(tableau(9), 1, 5)
Val_5 = Mid(tableau(12), 1, 5)
Val_6 = Mid(tableau(15), 1, 5)
tab_final(Counter, 1) = Val_1
tab_final(Counter, 2) = Val_2
tab_final(Counter, 3) = Val_3
tab_final(Counter, 4) = Val_4
tab_final(Counter, 5) = Val_5
tab_final(Counter, 6) = Val_6
Loop
Close #1
range_1 = Range(tab_final(3, 1), tab_final(i, 1))
range_1 = Application.Min(range_1)
Min_1.Value = range_1
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.DisplayStatusBar = True
ActiveSheet.DisplayPageBreaks = True
fin = Time
temps = fin - debut
MsgBox ("C'est fini !" & Chr(10) & "temps de traitement " & temps)
End Sub |
Partager