Lire un fichier par la fin
Bonjour,
Je cherche depuis un moment comment lire un fichier txt en commençant par la fin ?
De plus, je récupère des valeurs d'un fichier texte (ça fonctionne très bien) et je voudrais arrêter le traitement dès que ma valeurs est récupéré (même si la même valeur ce trouve plus loin dans le fichier).
Merci pour vos pistes et votre aide,
Code:
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
| Const ForReading = 1, ForWriting = 2
Dim oFso, f
Dim lectureLigne, sansEspace
Dim caNet, nbArticle, nbTicketCA
Set oFso = CreateObject("Scripting.FileSystemObject")
'Ouverture et lecture du fichier
Set f = oFso.OpenTextFile("P:\Scripts\test.txt", ForReading)
do while f.AtEndOfStream = false
lectureLigne = f.readLine
caNet = left(lectureLigne,8)
nbArticle = left(lectureLigne,19)
nbTicketCA = left(lectureLigne,29)
if caNet = "C.A. net" Then
sansEspace=replace(lectureLigne," ","")
Deb = Instr(sansEspace,"C")+7
Fin = Instr(sansEspace,"E")
msgbox Mid(sansEspace,Deb,Fin-Deb)
End If
if nbArticle = "Nombre d'articles " Then
sansEspace=replace(lectureLigne," ","")
test = replace(sansEspace,"Nombred'articles","")
msgbox test
End If
if nbTicketCA = "Nombre de tickets (avec C.A.)" Then
sansEspace=replace(lectureLigne," ","")
test2 = replace(sansEspace,"Nombredetickets(avecC.A.)","")
msgbox test2
End If
loop
f.close |
Voici le contenu de mon fichier test.txt :
Citation:
========================================================
========================================================
RAZ NUMERO
--------------------------------------------------------
Boutique :
Caisse :
Caissier :
En date :
Heure :
========================================================
--------------------------------------------------------
Ventes (brut) 0,00 E
Remises caisse 0,00 E
--------------------------------------------------------
Retours 0,00 E
C.A. net 0,00 E
--------------------------------------------------------
Taxes sur chiffre d'affaires
--------------------------------------------------------
--------------------------------------------------------
Règlements
--------------------------------------------------------
--------------------------------------------------------
--------------------------------------------------------
Sorties de caisse 0,00 E
Dont dépenses 0,00 E
--------------------------------------------------------
Entrées de caisse 0,00 E
Dont retouches 0,00 E
--------------------------------------------------------
Nombre d'articles 0,00
Nombre d'articles cadeau 0,00
Nombre de tickets (avec C.A.) 0
Indice de vente 0,00
Panier moyen 0,00 E
========================================================
*** FIN BANDE RAZ ***
========================================================
========================================================
RAZ NUMERO
--------------------------------------------------------
Boutique :
Caisse :
Caissier :
En date :
Heure :
========================================================
--------------------------------------------------------
Ventes (brut) 0,00 E
Remises caisse 0,00 E
--------------------------------------------------------
Retours 0,00 E
C.A. net 2574,50 E
--------------------------------------------------------
Taxes sur chiffre d'affaires
--------------------------------------------------------
--------------------------------------------------------
Règlements
--------------------------------------------------------
--------------------------------------------------------
--------------------------------------------------------
Sorties de caisse 0,00 E
Dont dépenses 0,00 E
--------------------------------------------------------
Entrées de caisse 0,00 E
Dont retouches 0,00 E
--------------------------------------------------------
Nombre d'articles 53,00
Nombre d'articles cadeau 0,00
Nombre de tickets (avec C.A.) 33
Indice de vente 0,00
Panier moyen 0,00 E
========================================================
*** FIN BANDE RAZ ***
Je voudrais donc commencer par la fin pour récupérer les valeurs qui ne sont pas à zéro et dès qu'il trouve, il s'arrête (et n'affiche pas celle à 0 plus haut)
Merci :)