Jag har 2 Textboxar med multiline Hej Hej och tack för svaret Hej Beklagar, men det fungerar inte. HejJämföra Textboxar
Jag skriver vertikalt 7 siffror i varje
Hur gör jag för att räkna hur många rätt jag har ?
Eller skall man inte andvända Textboxar ?Sv: Jämföra Textboxar
Enl den här principen kan du lösa det.
Option Explicit
Private Sub Command1_Click()
Dim txt1Array() As String, txt2Array() As String
Dim i As Long, j As Long, AntCorrect As Long
txt1Array = Split(Text1.Text, vbCrLf)
txt2Array = Split(Text2.Text, vbCrLf)
For i = 0 To 6
For j = 0 To 6
If txt1Array(i) = txt2Array(j) Then _
AntCorrect = AntCorrect + 1
Next 'j
Next 'i
Label1.Caption = AntCorrect
End Sub
mvh
Sven
Ser att du är från Trelleborg. Det är jag också ungefär samma
ålder. Gick på Västra Skolan Gunnar Thelin.
Jag bor sedan 1962 i Haninge utanför Stockholm
DSSv: Jämföra Textboxar
Jag kommer utanför Trelleborg , så på västra skolan har jag
inte gått
Koden stoppar på:
If txt1Array(i) = txt2Array(j) Then _
varje gång. Vad gör jag för fel
mvh
Janne
http://jan.andersson.just.nuSv: Jämföra Textboxar
Exemplet förutsätter att det finns två TextBoxar
med 7 tal lodrätt i varje, efter varje tal har det
tryckts Enter som genererar vbCrLf dvs radskifte.
DSSv: Jämföra Textboxar
Vid rättning och båda boxarna har
samma siffror (alltså 7 rätt) får jag svaret
25 rätt.Sv: Jämföra Textboxar
Du har väl slarvat med något förmodligen variabler i och j
Klistar in denna kod i ett tomt projekt och kör så funkar det.
Två textboxar en label en command1
kör och skriv in följt av Enter (vbCrLf)
Option Explicit
Private Sub Command1_Click()
Dim txt1Array() As String, txt2Array() As String
Dim i As Long, j As Long, AntCorrect As Long
txt1Array = Split(Text1.Text, vbCrLf)
txt2Array = Split(Text2.Text, vbCrLf)
For i = 0 To 6
For j = 0 To 6
If txt1Array(i) = txt2Array(j) Then _
AntCorrect = AntCorrect + 1
Next 'j
Next 'i
Label1.Caption = AntCorrect
End Sub
DS