ich beiße mir momentan an einem VBA Code die Zähne aus und bräuchte mal professionelle Hilfe obwohl ich kein Laie bin und eigentlich doch recht fortgeschrittene Kenntnisse habe.
Also folgendes ist gegeben: Eine Excel Datei mit drei Blättern die jeweils schon einen gewissen Inhalt haben (mehr dazu später) und jeweils Export-Dateien eines anderen Programms (txt Files).
Die Textdateien sollen eingelesen werden. Diese Enthalten immer Parametersätze beispielsweise wie folgt:
D43.p9611 := N/A;
D43.p9563.0 := 2;
D43.p9799 := 16#CE6E0773;
D43.p9899 := 16#770D4497;
D43.p9729.0 := 16#F7E7E475;
D43.p9729.1 := 16#C5F38C1D;
D43.p9729.2 := 16#00000000;
D43.p9399.0 := 16#E0F222BC;
D43.p9399.1 := 16#AAAD7973;
D43.p9610 := 16#000000C6;
D43.p9601 := 16#0000000C;
D43.p9533 := 100;
D11....
...
In der Excel Datei gibt es bereits ein Blatt auf dem bereits bekannte Parametersätze in ähnlicher Form drin stehen, etwa so: A B C D
Motor Variant Parameter Value
1 D11 D p9399.0 16#5AF72D9A
2 D11 D p9399.1
3 D11 D p9533 100
4 D11 D p9563.0 2
5 D11 D p9601 16#0000000C
6 D11 D p9610 16#000000C0
7 D11 D p9611
8 D11 D p9729.0 16#F7E7E475
9 D11 D p9729.1 16#C1545DFF
10 D11 D p9729.2 16#00000000
11 D11 D p9799 16#F72A8D76
12 D11 D p9899 16#E3FCFFA6
13 D43 A ....
Die Liste geht noch um ein Vielfaches weiter, aber ein kompletter Parametersatz sind jeweils immer 12 Zeilen
Es geht sich jetzt darum zu schauen, ob sich die Parametersätze jeweils gleichen zwischen Textdatei und Excel Datei. Dabei muss logischerweise die Spalte "Variant" ignoriert werden. Achtung, in der Excel Tabelle kann Motor D11 in mehreren Varianten vorkommen, aber die Quelldatei (Txt) beinhaltet diese Information nicht.
Was habe ich bis jetzt programmiert:
1. Logische Sortierung zu Beginn für Motor, Variante und Parameter.
2. Zeilenweises Einlesen der Quelldatei
2.a. Entfernung unnötiger Zeichen und Normierung.
2.b. Speicherung jeder Zeile in separatem Arbeitsblatt ("Schmiertabelle").
2.c. Sortierung dieses eingelesenen Bereichs wie in #1
2.d. Wenn aktueller Motor abgearbeitet ist, löschen des separaten Arbeitsblattes.
Was fehlt? Nun es fehlt im Grunde, dass ich die beiden Tabellen miteinander vergleiche. Also die Schmiertabelle mit der gegebenen Tabelle unter Außerachtlassung der Spalte "Variant". Die Subroutine spuckt idealerweise ein Bool aus, ob jetzt der Datensatz gefunden wurde oder nicht ("found") und weiterhin die Information, elche Variante das nun jetzt ist.
Kann mir da jemand helfen?
Gruß,
Dennis