Bonjour à tous,

J'ai des données dans un fichier CSV que je souhaite retraité pour ce faire j'exécute le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Dim intFic As Integer
    Dim strLigne As String, Val() As String
    Dim i As Long
    Dim Tabl1() As Integer, Tabl2() As Single
 
    i = 1
 
    intFic = FreeFile
 
    Open "XXXXX.csv" For Input As intFic
        While Not EOF(intFic)
            Line Input #intFic, strLigne
            Val = Split(strLigne, ",")
            If CSng(Val(1)) > 2.5 Then
                ReDim Preserve Tabl1(i), Tabl2(i)
                Tabl1(i) = 1
                Tabl2(i) = Format(CSng(Val(0)), "0.000000")
            ElseIf CSng(Val(1)) < 2.5 Then
                ReDim Preserve Tabl1(i), Tabl2(i)
                Tabl1(i) = 0
                Tabl2(i) = Format(CSng(Val(0)), "0.000000")
            End If
            i = i + 1
        Wend
    Close intFic
Cependant le fait d'utiliser une conversion de type me modifie la valeur. écart de l'ordre 10-7 entre la valeur stockée csv et la valeur récupérée dans le Tabl2

Y-a-t-il une autre façon de faire plus robuste ?
Dois je utiliser un autre type de variable ?

Merci de votre aide