cs_gnome
Messages postés4Date d'inscriptionjeudi 11 juillet 2002StatutMembreDernière intervention20 juillet 2002
-
20 juil. 2002 à 15:00
cs_thitoune
Messages postés124Date d'inscriptionmardi 19 février 2002StatutMembreDernière intervention 7 mars 2004
-
12 août 2002 à 17:07
j'ai un pb je dois trouver un fichier correspondant aux mots mis dans des textbox(9)le pb c ke les mots sont ecrits en fonction de 9 critères ex:pour le critère langage de programmation : j'ai les mots :java,c++,vb,prolog; pour le critère systéme:unix,win2000,linux ..etc...
kan je tape tout ça dans les text box j'ai mon bouton recherche ki doit trouver le fichier ki contient les 9 textbox parmi les 150 fichiers ke j'ai. et je dois afficher ce fichier dans une listbox!
help me please
gnome
cs_thitoune
Messages postés124Date d'inscriptionmardi 19 février 2002StatutMembreDernière intervention 7 mars 20042 12 août 2002 à 17:07
J'ai une solution partielle à ta question :
Shell("findstr /i unix c:\*.txt > Fic")
Ensuite tu n'as plus qu'à récupérer les lignes du fichier dans une listbox qu'on appelera list1
(1)
Ensuite,
Shell("findstr /i win2000 c:\*.txt > Fic")
mais si tu trouves dans list1 une ligne identique à celle lue dans le fichier Fic, tu la copie dans list2 (une 2eme listbox)
tu supprime tout dans list1, et tu transvase tout ce qui est dans list2 dans la liste list1
Et tu recommence à l'étape (1) pour les mot 3, 4, 5, 6, 7, 8 et 9. Ainsi, dans list1 tu auras les fichiers qui t'intéresses.
Voici un bout de code qui devrait pouvoir t'aider :
Sub toto()
Dim TextLine As String
Open "Fic" For Input As #1
Do While Not EOF(1)
Line Input #1, TextLine
TextLine = Mid$(TextLine, 1, Len(TextLine) - getDebut(TextLine))
For i = 1 To List1.ListCount - 1
If TextLine = List1.List(i) Then
List2.AddItem TextLine
End If
Next i
Loop
Close #1 ' Ferme le fichier.
End Sub
Function getDebut(S As String) As Integer
For i = 0 To Len(S)
aa = Mid$(S, Len(S) - i, 1)
If Mid$(S, Len(S) - i, 1) = ":" Then
getDebut = i + 1
Exit Function
End If
Next i
End Function