Assilva, o ideal seria em vez de utilizar o Evento Change no TextBox2, utilizar o Evento AfterUpdate ou Exit
O porque ? Como na Rotina filtrocriterio1 utilizamos a propriedade : ListView1.ListItems.Remove iLin, então a cada caracter digitado diferentemente filtrocriterio que filtra os itens diretamente da planilha, ele remove os itens ja carregados no listview, então em seu codigo de Lote 369258 qunado digitar numero por numero ele ira remover o iten o qual coincidiu com o numero 3 e desta forma não teremos mais esta referencia carregada no listview, e o resultado será VAZIO, para uma melhor compreensão, mantendo o evento CHANGE em vez de digitar numero por numero cole o valor inteiro e terá o resultado esperado, porque a rotina estará procurando pelo numero completo e não numero por numero.
Neste evento, temos um ganho de performance, pois é efetuado somente uma vez o Loop, imagine um numero com 6 caracteres, no evento change a rotina irá ser executada 6 vezes.
Private Sub TextBox2_AfterUpdate()
Call filtrocriterio1
End Sub
Faça os testes e veja se resolve.
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 18/10/2013 5:25 am