Dateien überprüfen und dann in Liste ausgeben.

BLADEooz hat gesagt.:
Wenn ich übrigens alle Zeichenfolgen (1D IN NS) abfragen lasse dann wird mir "Laufzeitfehler 13 Typen unverträglich" angezeigt. Ich konnte aber nicht rausfinden wo in deinem Code der Fehler liegt.

Ups, die Klammersetzung ist falsch.
Nicht InStr(1, Text, "1D"=0)
sondern InStr(1,Text,"1D") =0

müsstest du dann überall abändern.


Zu deiner neuen Aufgabe. Das klingt jetzt doch etwas komplexer.
Ich mein du sollst jetzt quasi eine Zeichenfolge rausschreiben die weder eine feste Position hat noch einen esten Aufbau geschweig denn das du die Zeichenkette kennst?!

Wenn jetzt 1D IN NS [Server] immer so aussehen würde, könntest du die Datei Zeienweise durchgehen, nach den ersten drei Wörtern suchen und dann alles was danach kommt ausgeben. Wenn das aber auch nicht immer gleich ist möchte ich fast behaupten das du eine Glaskugel beantragen solltest, wenn es keine anderen Strukturen gibt ;).


Gruß
 
Also zu deinem code:
Es kommt jetzt zwar keine Fehlermeldung mehr, aber wenn ich das Programm ausführen lasse wird nur ein einziges File genannt was den Anforderungen nicht entspricht, und das ist defnitiv zu wenig. :)

Zu meiner Aufgabe:
Also 1D IN NS steht zwar immer davor, aber nicht immer mit den gleichen Abständen vor dem Beginn in der Zeile, soll heißen vor 1D IN NS kann mal 1 Tab stehen oder mal 6 Leerzeichen oder mal...
Der Abstand zwischen der Zeichenfolge ist meinen Stichproben zufolge immer:
1D<Tab>IN<Tab>NS und dann zum Server wieder verschieden.
Tja wie das gehen soll und ob es überhaupt mit den menschlichen bzw. VBischen Fähigkeiten zu machen ist weiß ich auch nicht. :(
Bin aber für jede Hilfe dankbar: :)

MfG
BLADEooz
 
Hi,
also wenn der zu wenig Ergebnisse ausgibt soltest du mal vergleichen ob die Zeichenketten innerhalb der fehlerhaften Dateien wirkeich exakt 1D IN NS kirk.baltic.net. beinhalten. Wenn kirk.baltic.net auch ohne den . am Ende vorkommt solltest du den Punkt vielleicht weglassen. Wenn das ab und an mal klein dann wieder groß geschrieben wird solltest du ucase benutzen um den gesamten Text der Datei groß zu schreiben. Du musst jetzt eben darauf achten das du exakte Kriterien hast nach denen du suchen kannst.
Aber das scheint ja nicht wirklich das Problem zu sein, denn bei dir findet er es ja wohl überall. Du musst nun wohl oder übel auf Fehlersuche gehen. Ich kann das hier ja kaum nachvollziehen ;). Geh mit dem Debugger die einzelnen Schritte durch die das Programm abwickelt. Vergleiche die Variabeln. Dadurch müsstest du schließlich darauf kommen was da genau schief läuft.
Vielleicht überprüft der nur der die erste Datei? Vielleicht stehen die Servernamen in den Dateien noch wo anders und du musst doch zeilenorientiert arbeiten und nicht den gesamten Text der Datei einlesen? Die Arbeit können wir dir nun schlecht abnehmen. Wenn du den Fehler gefunden hast poste nochmal bitte, würde mich auch interessieren ;).

Gruß
 
Sorry, dass ich schon wieder nerve :) , aber ich hab da noch ein kleinens Problem mit dem Debugger(ich benutz den grad zum ersten mal). Also ich klicke auf Debuggen, dann auf Einzellschritte oder auf Prozedurschritte und dann wird Private Sub Form_Load() markiert, das dumme ist dass ich nicht rausgefunden habe was ich machen muss damit das nächste Private Sub mmarkiert wird. Wenn ich versuche den Pfeil zu ziehen dan springt der Pfeil zurück in das erste Private Sub.
Könnte mir hier einer 'n Tipp geben wie das funktioniert.
Danke schon mal. :)

MfG
BLADEooz
 
Noch mal was zu meiner Aufgabe mit dem ausgeben der falschen Serverdateien.
Also es sieht so aus als wenn die Zeile wo der falsche Servername drin steht immer die 12. oider die 14. ist, und vor dem falschen Servr steht ja immer 1D IN NS. Das heißt doch eigentlich dass ich immer erst Zeile 12 abfragen lassen könnte ob dort 1D IN NS drin steht und dann, wenn es drinn steht fragen ob dahinter kirk.baltic.net. steht und wenn das nicht da steht, das ausgeben was da stattdessen steht. Und wenn es doch da steht in Zeile 14 gehen fragen ob da 1D IN NS steht und dann fragen was dahinter noch steht und das dann ausgeben lassen.
Verstanden? :)
Ich hoffe das würde so gehen.
Würd mich über Rückmeldung freuen.

MfG
BLADEooz
 
Hi,
zu deiner Aufgabe, wenn diese Zeilen wirklich fest sind hast du das richtig analysiert, musst du nur noch umsetzen ;).

Zu dem Debugger, wenn du einfach weitergehst mit Einzelschritt (ich wieß jetzt grad nicht... F5 oder F10?oder so..) sollte er weiter zum nächsten Befehl gehen.

Gruß
 
Zurück