Robert, me baseando nestas suas citações:
1º ) Você quer que quando acionar o form a rotina vá parando em cada código encontrado ?
É isso mesmo que eu preciso Mauro, não precisa parar em todas as matriculas, só preciso que quando coloque a matricula na form ela me leve onde está essa matricula na minha planilha que tem mais de 200mil linhas.
Pode ser na última MATRICULA repetida , mais com tanto que continue o print em todas. O Print, você quer dizer que continue pintando a cor de fundo das celulas ?
Se entendi corretamente e com a licença do colega Wagner Morel, troque a rotina que ele enviou pela a abaixo:
Private Sub Btn_Pesquisar_Click()
Dim i, j, UltimaLinha As Long
Application.ScreenUpdating = False
Dim Achou As Boolean
Dim sRg
Achou = False
UltimaLinha = Sheets("Plan1").Cells(Cells.Rows.Count, 2).End(xlUp).Row
If UltimaLinha < 2 Then UltimaLinha = 2
If Txt_Matricula.Text = "" Then
MsgBox "Digite a matrícula a pesquisar!", vbCritical, "ERRO"
Txt_Matricula.SetFocus
Exit Sub
Else
For i = 2 To UltimaLinha
If Range("B" & i).Value = Txt_Matricula.Text Then
Range("A" & i & ":E" & i).Interior.ColorIndex = 6
Achou = True
'Armazena o último endereço encontrado
sRg = Range("B" & i).Address(0, 0)
Unload Me
End If
Next
End If
If Achou = False Then
MsgBox "Matrícula não encontrada!", vbCritical, "ERRO"
Txt_Matricula.SetFocus
Else
MsgBox "Matrícula localizada com Sucesso!", vbDefaultButton1, "PESQUISAR"
End If
Application.ScreenUpdating = True
'Seleciona a Última Matricula encontrada
Range(sRg).Activate
End Sub
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 11/11/2013 5:56 pm