Assim: Para ir aos demais registros que coincidem com o critério
(Botão Próximo)
Private Sub Proximo_Click()
'Selecionei a planilha
Sheets("Fluxo").Select
'a partir do primeiro resultado do offset
linha = ActiveCell.Row
linha = linha + 1
Range("G" & linha).Select
Dim contador As Integer
'pra não varrer a planilha toda, acrescentei a variavel contador
contador = 0
If ActiveCell.Offset(1, 0).Value <> "" Then
Do While ActiveCell.Value <> txtValor.Text And contador < 165
ActiveCell.Offset(1, 0).Select
contador = contador + 1
Loop
If ActiveCell.Value = txtValor.Text Then
txtdata.Text = ActiveCell.Offset(0, -6).Value
txtdescrição.Text = ActiveCell.Offset(0, -3).Value
txtdocumento.Text = ActiveCell.Offset(0, -2).Value
txtguia.Text = ActiveCell.Offset(0, -1).Value
txtpagina.Text = ActiveCell.Offset(0, -4).Value
ComboBox1.Text = ActiveCell.Offset(0, -5).Value
Else
MsgBox "valor não encontrado!", vbCritical, "ERRO"
txtdata.Text = ""
txtdescrição.Text = ""
txtdocumento.Text = ""
txtguia.Text = ""
txtpagina.Text = ""
ComboBox1.Text = ""
End If
Else
MsgBox "Não Existe mais registros", vbCritical, "Erro"
End If
txtValor.SetFocus
End Sub
Para caso queira voltar, ai vai o Botão voltar:
Private Sub btnanterior_Click()
Sheets("Fluxo").Select
linha = ActiveCell.Row
linha = linha - 1
Range("G" & linha).Select
Dim contador As Integer
contador = 0
If ActiveCell.Offset(-1, 0).Value <> "" Then
Do While ActiveCell.Value <> txtValor.Text And contador < 165
ActiveCell.Offset(-1, 0).Select
contador = contador + 1
Loop
If ActiveCell.Value = txtValor.Text Then
txtdata.Text = ActiveCell.Offset(0, -6).Value
txtdescrição.Text = ActiveCell.Offset(0, -3).Value
txtdocumento.Text = ActiveCell.Offset(0, -2).Value
txtguia.Text = ActiveCell.Offset(0, -1).Value
txtpagina.Text = ActiveCell.Offset(0, -4).Value
ComboBox1.Text = ActiveCell.Offset(0, -5).Value
Else
MsgBox "Não existem cadastros anteriores", vbCritical, "Aviso"
End If
End If
End Sub
Espero que um dia possa ser útil a alguém.
Abraço
Postado : 23/04/2013 6:26 pm