Add a timer and set an interval to it.
VB Code:
Dim PressedKeys As String
Private Sub Timer1_Timer()
Timer1.Enabled = False
Do While LenB(PressedKeys) > 0
For A = 0 To List1.ListCount - 1
If InStr(1, List1.List(A), PressedKeys, vbTextCompare) = 1 Then
List1.ListIndex = A
PressedKeys = vbNullString
Exit Sub
End If
Next A
PressedKeys = Mid$(PressedKeys, 1, Len(PressedKeys) - 1)
Loop
End Sub
Private Sub List1_KeyPress(KeyAscii As Integer)
PressedKeys = PressedKeys & ChrW$(KeyAscii)
Timer1.Enabled = False
Timer1.Enabled = True
'prevent the default search from happening
KeyAscii = 0
End Sub
Didn't test the code, but is should work