VLOG

VB6 - Procura mais rápida em listagem

Se você pretende correr uma lista, procurando um determinado valor, que tal diminuir seu tempo de busca pela metade??? A diferença não será perceptível para uma lista pequena e nem para uma grande, mas imaginem um sistema onde uma única função chame diversas outras que possuem uns 4 ou 5 loops numa listagem enorme!!!
Faz toda a diferença, ao invés de efetuar um loop 100 vezes, você diminuir pela metade, ou seja, correr somente 50 até encontrar o que deseja!!! Para isso, você pode utilizar o código abaixo!!! Ele corre uma listagem de cima para baixo e ao mesmo tempo de baixo para cima!!!

Dim iLinha As Integer

For iLinha = 0 To Val(List1.ListCount / 2)
    If LCase(List1.List(iLinha)) = LCase(Text1.Text) Then
        MsgBox "Nome encontrado"
        Exit For
    ElseIf LCase(List1.List((List1.ListCount - 1) - iLinha)) = LCase(Text1.Text) Then
        MsgBox "Nome encontrado"
        Exit For
    End If
Next iLinha

Nenhum comentário:

Postar um comentário