deaktivert443556 Skrevet 28. september 2011 Del Skrevet 28. september 2011 Her er en forenklet versjon av en kode jeg har. Sub blablabla() TekstFil = "c:\mappe\fil.txt" fnum = FreeFile() Open TekstFil For Output As fnum Start: If noe Then noe annet Print #fnum, Et_Tall Else Close #fnum Exit Sub End If GoTo Start End Sub Et_Tall er altså en variabel som hentes flere ganger. Problemet er at det første tallet som hentes ut er det som ender opp sist i tekstfilen. Så hvis det som hentes ut er 1 2 4 6 8 Da ser tekstfilen slik ut: 2 4 6 8 1 Altså perfekt rekkefølge bortsett fra det aller første tallet. Er dette kjent problematikk? Finnes det en workaround for å tvinge scriptet til å skrive til bunnen av tekstfilen hver gang? Lenke til kommentar
Harald Staff Skrevet 28. september 2011 Del Skrevet 28. september 2011 Hei Den merkelige rekkefølgen må ligge i koden din. Når du åpner "for output" beholdes ikke gammelt innhold i tekstfilen. Prøv denne og se om tallene kommer i rekefølge: Sub Test() Dim fnum As Integer Dim tekstfil As String Dim i As Long tekstfil = "c:\temp\fil.txt" fnum = FreeFile() Open tekstfil For Output As fnum For i = 1 To 10 Print #fnum, i Next Close #fnum End Sub HTH. Beste hilsen Harald Lenke til kommentar
deaktivert443556 Skrevet 29. september 2011 Forfatter Del Skrevet 29. september 2011 Oh lord, jeg må ha vært tung i hodet i går ettermiddag. Brukte bokstavelig talt bare et minutt på å finne feilen nå. Tallet som skrives hentes fra gjeldende linje i ERP-systemet på jobben men i scriptet mitt så bytter jeg linje før jeg leser av tallet. Dermed så har jeg hele tiden lest av tallet fra linjen under den jeg ser etter. De siste ett-tallet kommer fra neste leverandør på listen... Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå