Sigurno postoje različiti načini da se to uradi ali ja sam pokušao da iskombinujem proceduru koja će da označi iskorišćena slova i proceduru validacije, pa sam došao do sledećeg rešenja.
Uzmemo reč koja je unesena označimo je sa strT. Pretražujemo da li je slovo iz prvog tekst boxa sadržano u toj reči. Za to koristimo funkciiju InStr. Ukoliko je sadržano obojimo tekst box. Takođe eliminišemo pronađeno slovo iz reči strT, koristići pronađenu poziciju i funkcije Left i Right. Ustvari iz početne reči uzmeo deo levo od pronađenog slova i deo desno od pronađenog slova. Pređemo na sledeći tekst box.
Na kraju ukoliko je sve uredu strT treba da bude prazan string (dužine 0). Ukoliko je nešto preostalo u tom stringu znači da ta slova nisu postojala u zadatim slovima i ispisujemo poruku.
Evo kod koji treba dodati u modul provera ispred petlje For a=1 To 10
Code:
Dim strT As String
Dim i As Integer, pos As Integer
strT = Trim(UCase(slagalica.rec))
For i = 1 To 10 ' provereva od zadatih slova, slovo po slovo da li je korisceno
pos = InStr(1, strT, UCase(slagalica.Controls("txt" & i).Text))
If pos <> 0 Then
strT = Left(strT, pos - 1) & Right(strT, Len(strT) - pos) ' Brise pronadjeno slovo iz reci
slagalica.Controls("txt" & i).BackColor = RGB(255, 0, 0) ' Ukoliko je koriljženo boji crveno
End If
Next i
If Len(strT) > 0 Then 'Ukoliko je preostalo slova u reci ona nisu bila u zadatim slovima
MsgBox ("Koriscena slova koja ne postoje: " & strT)
GoTo kraj
End If