hallo nochmals,
oh ... soviel VB-Code für die Funktion
Also ich habe mir das geschrieben (Bitte nicht lachen ...
Werden zwar 6 Zahlen in die output.txt geschrieben (5 Zahlen sind jedoch gleich)
Aber irgendwie werden doch nicht alle verglichen - habe den Fehler noch nicht gefunden !!!
Dim r1 As Byte
Dim r2 As Byte
Dim r3 As Byte
Dim r4 As Byte
Dim r5 As Byte
Dim r6 As Byte
Dim r7 As Byte
Dim r8 As Byte
Dim r9 As Byte
Dim r10 As Byte
Dim r11 As Byte
Dim r12 As Byte
'öffne ausgabedatei
Open "C:\daten\output.txt" For Output As #1
'öffne eingabedatei
Open "C:\daten\input.txt" For Input As #43
'lese nur einmal 1. und 2. zeile
Input #43, r1, r2, r3, r4, r5, r6
Input #43, r7, r8, r9, r10, r11, r12
GoTo sp2
sp1:
'es wird jetzt nur noch jeweils eine zeile gelesen und zwar r7 bis r12!
'die letzte gelesene zeile wird nach r1 bis r6 gerettet (also nach oben
' geschoben)
r1 = r7
r2 = r8
r3 = r9
r4 = r10
r5 = r11
r6 = r12
'nun kann die zeile gelesen werden
Input #43, r7, r8, r9, r10, r11, r12
sp2:
flag1 = 0
If r1 = r7 Or r1 = r8 Or r1 = r9 Or r1 = r10 Or r1 = r11 Or r1 = r12 Then flag1 _
= flag1 + 1
If r2 = r7 Or r2 = r8 Or r2 = r9 Or r2 = r10 Or r2 = r11 Or r2 = r12 Then flag1 _
= flag1 + 1
If r3 = r7 Or r3 = r8 Or r3 = r9 Or r3 = r10 Or r3 = r11 Or r3 = r12 Then flag1 _
= flag1 + 1
If r4 = r7 Or r4 = r8 Or r4 = r9 Or r4 = r10 Or r4 = r11 Or r4 = r12 Then flag1 _
= flag1 + 1
If r5 = r7 Or r5 = r8 Or r5 = r9 Or r5 = r10 Or r5 = r11 Or r5 = r12 Then flag1 _
= flag1 + 1
If r6 = r7 Or r6 = r8 Or r6 = r9 Or r6 = r10 Or r6 = r11 Or r6 = r12 Then flag1 _
= flag1 + 1
If flag1 = 5 Then Print #1, r7; ","; r8; ","; r9; ","; r10; ","; r11; ","; r12
If EOF(43) = False Then GoTo sp1
Close #43
Close #1 Es soll so ablaufen.
Lese erste Zeile (input.txt)
vergleiche diese Zeile mit allen anderen Zeilen darunter in dieser Datei
wenn 5 Zahlen in einer anderen Zeile gleich sind dann schreibe diese
5 Zahlen in die output Datei.
Dann lese zweite Zeile (input.txt)
vergleiche diese Zeile mit allen anderen Zeilen darunter in dieser Datei
wenn 5 Zahlen in einer anderen Zeile gleich sind dann schreibe diese
5 Zahlen in die output Datei.
Dann lese dritte Zeile (input.txt)
.
.
.
usw. bis Dateiende
Die letzte Zeile aus der (input.txt) kann ja nicht mehr verglichen werden
da Dateiende und keine weitere Zeile mehr folgt.
Verstanden ?
1 , 4 , 5 , 8 , 19 , 40
1 , 4 , 5 , 8 , 24 , 40
Hier würde
1,4,5,8,40
in die output.txt geschrieben - da 5 Zahlen gleich sind
Warum mein VB-Code nicht das macht was ich will - ????????
Keine Ahnung ....
LG
Angelina
Beitrag wurde zuletzt am 06.03.14 um 19:39:31 editiert. |