mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 23 nov. 2007 à 12:31
Salut,
dim Atrouve as boolean
Atrouve=false
dim LigneMot as Integer
for i=1 to len(Tableau) '(si ton tableau commence à 1) tu parcours ton tableau
if InStr(Motcherche, Tableau(i)) then 'si tu trouves ton mot, tu sors de la boucle et tu sauvegardes le numéro de la ligne si t'en as besoin
atrouve=true
LigneMot=i
exit for
endif
next
if not Atrouve then 'si il l'a pas trouvé, il doit l'ajouter à la fin (sinon, adapte et classe le)
redim tableau(1 to ubound(tableau)+1) 'encore une fois, valable si ton tableau commence à 1, sinon adapte. Ca redimensionne ton tableau pour pouvoir mettre la valeur en question
tableau(ubound(Tableau))=MotCherche
msgbox "Pas trouve mot"
else 'si il l'a trouvé, il t'affiche la ligne dans le tableau
msgbox "A trouvé mot ligne " & trim(str(LigneMot))
endif
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 23 nov. 2007 à 12:34
Ah, un truc, si ton tableau a N lignes au max, dans ce cas là, tu fais de 1 à N, et tu sors lorsque y'a rien dans ta ligne, et dans ce cas, tu mets ta chaine là au lieu de rajouter une ligne derrière.
Le problème avec ce système c'est que si tes N lignes sont déjà remplies, tu peux pas rajouter de ligne.
A toi de voir donc si tu es sur que tu ne dépasseras jamais cette limite.
If UBound(Filter(MonTableau, Recherche)) >= 0 Then
RechercheDansTableau = "l'élément recherché a été trouvé" &vbCr& _
Join(MonTableau)
Else
MsgBox "l'élément recherché n'a pas été trouvé" &vbCr& _
Join(MonTableau),,Recherche
MonTableau(UBound(MonTableau)) = Recherche
ReDim Preserve MonTableau(UBound(MonTableau) + 1)
RechercheDansTableau = "l'élément recherché a été rajouté au tableau" &vbCr& _
Join(MonTableau)
End if
End function