Hallo,
also das sind eigentlich alles Grundlagen, die du auch im Internet finden würdest. Ich frag mich nur warum hier kein anderer antwortet.
Also zum Einlesen später.
Erstmal erkläre ich den Code:
Visual Basic:
Dim a As String
Dim b As Variant
Dim c As Integer
a = "Haus,Baum,ketten,motorsäge,Katze,halskrause,fahrrad,fahndung"
b = Split(a, ",")
For c = 0 To UBound(b)
If Len(b(c)) <= 5 Then
a = Replace(a, b(c) & ",", "")
Text1.Text = a
End If
Next c
Für die Variable "c" verwendet man eigentlich "i" (hat sich so eingebürgert ;-))
Ich habe aber jetzt einfach mal c genommen. In der Variable "a" steht der Text, der eingelesen wurde. Dann müssen die einzelnen Wörter voneinander getrennt werden um zu erkennen welche Länge sie haben. Das geht mit dem "Befehl" "Split". Dieser benötigt zum einen den Ausgangsstring und zum anderen das Zeichen oder die zeichenfolge, die die Trennung der Wörter ausmacht. In diesem Falls as Komma (","). In der Variable b sind jetzt sozusagen mehrere Werte enthalten, die man durch "b()" abrufen kann.
"MsgBox (b(0))" würde z.B. "Haus" anzeigen (das erste Wort). Nun muss man noch in einer Schleife prüfen wie lang diese ausgelesenen Wörter sind. Dazu bedient man sich der For-Next-Schleife, die solange prüft bis der zweite angegebene Wert erreicht wurde. Wir weisen der Variable c den Wert 0 zu, weil die Split-Abfrage auch bei 0 anfängt. der Endwert ist die Anzahl der Kommas, die man mit "UBound(b)" abfragen kann.
Jetzt wird geprüft, ob das derzeit behandelte Wort größer oder gleich 5 ist, was mit Len" funktioniert. Normalerweise würde statt dem c in "Len(b(c))" eine Zahl ab 0 stehen. Doch diese Wert muss ja variabel sein. Beim ersten Durchgang steht dieser auf 0, beim zweiten auf 1 bis 7. Wenn die Länge des Wortes größer oder gleich 5 ist wird das Wort in dem String a einfach mit Replace durch nichts ersetzt. Die Zeile sieht etwas kompliziert aus, ist sie aber nicht. Anschließend wird in Text1 die Variable a eingelesen.
Naja, ich mach mir hier eine Arbeit ;-) Hoffentlich hast du's jetzt verstanden.
Mann, ich glaub das hier nicht. Warum hat der Firefox hier keine Cookies bzw. sie sind deaktiviert? In Opera klappt das wunderbar. Aber hier muss ich mich jedesmal neu einloggen bevor ich einen Beitrag abschicken kann. Unglaublich.
Zum Code mit dem Einlesen:
Visual Basic:
Dim a As Integer
Dim b
a = FreeFile()
Open "C:\boot.ini" For Input As #a
b = Input(LOF(a), 1)
Close #a
Text1.Text = Mid$(b, 1, Len(b) - 0)