Besoin d'aide : importation de données .txt

MMaker13 Messages postés 6 Date d'inscription dimanche 2 novembre 2003 Statut Membre Dernière intervention 10 mai 2006 - 1 févr. 2004 à 12:23
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 1 févr. 2004 à 18:55
une des lignes du doc .txt que je dois importer est la suivante :
22/06/1998 31,25 31,4 31,25 31,25 15565669
en affectant
22/06/1998 à la variable Date(i,j)
31,25 à Ouv(i,j)
....
15565669 à Volume(i,j)

Mon problème est la gestion de la tab...

mon code pour une séparation par ";" est :

Open App.Path & "\Donnees" & Nom_FichierTxt(1) For Input As #2

i = 1
Do Until EOF(2)
Line Input #2, DataLine
If InStr(1, DataLine, ";") <> 0 Then
PartLine = Split(DataLine, ";")

Code(i) = PartLine(0)
Dat(i) = PartLine(1)
Temp = Val(Dat(i))
Jour(i, Valeur) = Temp
O(i) = PartLine(2)
Temp = Val(O(i))
Ouv(i, Valeur) = Temp
l(i) = PartLine(3)
Temp = Val(l(i))
Mini(i, Valeur) = Temp
H(i) = PartLine(4)
Temp = Val(H(i))
Maxi(i, Valeur) = Temp
C(i) = PartLine(5)
Temp = Val(C(i))
Dernier(i, Valeur) = Temp
ElseIf Left(DataLine, 1) <> "" Then
End If
i = i + 1
Loop
NbDeDonnées(Valeur) = i

Close #2

Je vous remercie pour votre aide...encore novice je perds beaucoup de temps à essayer de résoudre ce problème...

1 réponse

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
1 févr. 2004 à 18:55
Salut MMaker13
"Mon problème est la gestion de la tab..."
Qu'elle est ta question ? je n'en vois pas.

-1- Tu fais un Split en utilisant le ";" comme séparateur alors que les données sont séparées par des "," : bizarre.
-2- Si "tab" est la touche tabulation qui pourrait se trouver entre la date et le 1er chiffre, ou entre le dernier chiffre et le volume :
En faisant le Split, Parline(0) vaudra "22/06/1998 31"
Il te suffit donc de séparer à nouveau ces deux valeurs avec un autre Split :
Tablo = Split(PartLine(0), Chr(9))
sachant que Chr(9) est le caractère Tabet donc Date(i) Tablo(0) et Ouvr(i,j) Tablo(1)
-3- Je ne vois pas du tout à quoi sert "Valeur" et où il est incrémenté (géré)

Bref, ça manque de précisions
Vala
Jack
0
Rejoignez-nous