Explication de ce code

Résolu
tyde Messages postés 103 Statut Membre -  
tyde Messages postés 103 Statut Membre -
Bonjour,
je suis débutant en Visual basic et j'aimerais avoir une explication de ce code que vient de m'envoyer un copain.
Dim s As String
i = 1
While (InStr(1, s, " ", vbTextCompare) <> 0)
m = Trim(Left(s, Val(InStr(1, s, " ", vbTextCompare))))
List1.AddItem m
s = Trim(Right(s, Len(s) - Len(m)))
i = i + 1
Wend
Merci.
Configuration: Windows XP
Firefox 3.0.8

5 réponses

  1. tyde Messages postés 103 Statut Membre 2
     
    Merci de bien vouloir me donner une explication
    0
  2. KéKiDonc ??
     
    Slt,

    C'est soit un programmateur de déclenchement d'une bombe à neutron - soit un puissant malware de dernière génération - j'hésite encore (:>).

    slt.
    0
  3. loupius
     
    Je ne sais pas à quoi sert ce code, mais il y a quelque chose qui attire l'attention.
    En effet, tu recherches une sous-chaîne dans une chaîne qui n'a pas été initialisée.
    Conclusion: code pourri ;-)
    0
  4. tyde Messages postés 103 Statut Membre 2
     
    voici le code en entier :

    List2.Clear
    List1.Clear
    Text2.Text = ""

    Dim s As String
    Dim nbr_records As Long

    s = Trim(Text1.Text)
    If (s <> "") Then
    i = 1
    While (InStr(1, s, " ", vbTextCompare) <> 0)
    m = Trim(Left(s, Val(InStr(1, s, " ", vbTextCompare))))
    List1.AddItem m
    s = Trim(Right(s, Len(s) - Len(m)))
    i = i + 1
    Wend
    List1.AddItem s
    Text2.Text = i
    Data1.DatabaseName = "C:\Program Files\Microsoft Visual Studio\VB98\Biblio.mdb"
    Data1.RecordSource = "TITLES"
    Data1.Refresh
    Data1.Recordset.MoveLast
    nbr_records = Data1.Recordset.RecordCount
    Data1.Recordset.MoveFirst
    i = 1
    Do While Not Data1.Recordset.EOF
    j = 0
    tit = Data1.Recordset!Title
    While (j < List1.ListCount + 1)
    If (InStr(1, tit, List1.List(j), vbTextCompare) <> 0) Then
    If (j = List1.ListCount - 1) Then
    List2.AddItem tit
    End If
    Else
    GoTo 100
    End If
    j = j + 1
    Wend

    100:
    P1.Value = CInt(i * (100 / nbr_records))
    Data1.Recordset.MoveNext
    i = i + 1
    Loop

    Else
    MsgBox "Veuillez saisir au moins un mot clé"
    End If

    merci.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. tyde Messages postés 103 Statut Membre 2
     
    j'aimerais bien que quelqu'un m'explique ce code.
    merci
    0