dignsag
Erfahrenes Mitglied
Aaaaaaaalso,
ich hab mir das ganze jetzt mal näher angeschaut, und bin schon recht stolz das du das alleine so weit hinbekommen hast. Ich kann dir mal zeigen was ich noch geändert habe:
Erstmal musst du die InStr-Werte nicht jedes mal in eine neue Variable schreiben, völlig unnötig. Du kanns dein InStr() so behandeln als wäre es der Wert der später bei der Durchführung ermittelt wird.
Beispiel:
Dadurch sparst du dir natürlich auch ne Menge Variablen
Schau:
Und hier dein Code mit meinen Vorschlägen umgestellt:
Das sieht doch schon besser aus oder? Das ganze könntest du evtl. noch durch "Schleifen" vollends verkürzen. Mit "Arrays" kannst du die Variablendeklaration sogar noch verkürzen.
Aber dich da mal zu informieren und rumzuprobieren überlass ich mal wieder dir ^^
Hoffe geholfen zu haben
ich hab mir das ganze jetzt mal näher angeschaut, und bin schon recht stolz das du das alleine so weit hinbekommen hast. Ich kann dir mal zeigen was ich noch geändert habe:
Erstmal musst du die InStr-Werte nicht jedes mal in eine neue Variable schreiben, völlig unnötig. Du kanns dein InStr() so behandeln als wäre es der Wert der später bei der Durchführung ermittelt wird.
Beispiel:
Code:
'Dein Code
If InStr(Eingabe, "[") And InStr(Eingabe, "]") Then
p1 = InStr(Eingabe, "[")
p2 = InStr(Eingabe, "]")
p3 = Mid(Eingabe, p1, p2 - p1)
LblPosition.Caption = "Position " & p3 & "]"
Else
LblPosition.Caption = "Keine Angaben"
End If
'Mein Vorschlag
If InStr(Eingabe, "[") And InStr(Eingabe, "]") Then
p3 = Mid(Eingabe, InStr(Eingabe, "["), InStr(Eingabe, "]") - InStr(Eingabe, "["))
LblPosition.Caption = "Position " & p3 & "]"
Else
LblPosition.Caption = "Keine Angaben"
End If
Dadurch sparst du dir natürlich auch ne Menge Variablen
Schau:
Code:
'Deine Variablendeklarationen
Dim Eingabe As String
Dim p1 As Integer
Dim p2 As Integer
Dim p3 As String
Dim m1 As Integer
Dim m2 As Integer
Dim m3 As String
Dim k1 As Integer
Dim k2 As Integer
Dim k3 As String
'und die die ich brauche
Dim Eingabe As String
Dim p3 As String
Dim m3 As String
Dim k3 As String
Und hier dein Code mit meinen Vorschlägen umgestellt:
Code:
Dim Eingabe As String
Dim p3 As String
Dim m3 As String
Dim k3 As String
Eingabe = txtEingabe.Text
If InStr(Eingabe, "[") And InStr(Eingabe, "]") Then
p3 = Mid(Eingabe, InStr(Eingabe, "["), InStr(Eingabe, "]") - InStr(Eingabe, "["))
LblPosition.Caption = "Position " & p3 & "]"
Else
LblPosition.Caption = "Keine Angaben"
End If
If InStr(Eingabe, "3.Wort") And InStr(Eingabe, "4.Wort") Then
m3 = Mid(Eingabe, InStr(Eingabe, "3.Wort"), InStr(Eingabe, "4.Wort") - _
InStr(Eingabe, "3.Wort"))
Lbl3Wort.Caption = m3
Else
Lbl3Wort.Caption = "Keine Angaben"
End If
If InStr(Eingabe, "4.Wort") And InStr(Eingabe, "5.Wort") Then
k3 = Mid(Eingabe, InStr(Eingabe, "4.Wort"), InStr(Eingabe, "5.Wort") - _
InStr(Eingabe, "4.Wort"))
Lbl4Wort.Caption = k3
Else
Lbl4Wort.Caption = "Keine Angaben"
End If
Das sieht doch schon besser aus oder? Das ganze könntest du evtl. noch durch "Schleifen" vollends verkürzen. Mit "Arrays" kannst du die Variablendeklaration sogar noch verkürzen.
Aber dich da mal zu informieren und rumzuprobieren überlass ich mal wieder dir ^^
Hoffe geholfen zu haben