Boa tarde amigos
Tenho este código para filtrar o formulário da imagem abaixo. Mas se clikar no botão da letra "F", ele filtra a letra selecionada mas completa o form até a ultima linha possível com outras letras seguintes.
Queria que ao clikar por exemplo na letra F mostrar só os nomes iniciados com "F" e etc.
Private Sub GrupoDeFiltragem_AfterUpdate()
Dim strFiltragem, strProcura As String
strFiltragem = "Entidade"
'abrir um conjunto de registros temporários para pesquisa.
Dim strTemporaria As Object
Set strTemporaria = Me.Recordset.Clone
'constroi a string a filtrar
strProcura = "Left([" + strFiltragem + "],1) = " + Chr(34) + GrupoDeFiltragem.Controls.Item(GrupoDeFiltragem.Value - 1).Name + Chr(34)
'encontrar o primeiro registro do filtro
strTemporaria.FindFirst strProcura
'Se nenhum registro for encontrado, procura o mais próximo
If strTemporaria.NoMatch Then
strProcura = "Left([" + strFiltragem + "],1) >= " + Chr(34) + GrupoDeFiltragem.Controls.Item(GrupoDeFiltragem.Value - 1).Name + Chr(34)
Debug.Print strProcura
strTemporaria.FindFirst strProcura
End If
'se encontrado vai para o registro
If Not strTemporaria.NoMatch Then
Me.Bookmark = strTemporaria.Bookmark
End If
'se pressionado algum botão limpa o conjunto de registros
Me.GrupoDeFiltragem.Value = 0
Set strTemporaria = Nothing
End Sub
Obrigado
Tenho este código para filtrar o formulário da imagem abaixo. Mas se clikar no botão da letra "F", ele filtra a letra selecionada mas completa o form até a ultima linha possível com outras letras seguintes.
Queria que ao clikar por exemplo na letra F mostrar só os nomes iniciados com "F" e etc.
Private Sub GrupoDeFiltragem_AfterUpdate()
Dim strFiltragem, strProcura As String
strFiltragem = "Entidade"
'abrir um conjunto de registros temporários para pesquisa.
Dim strTemporaria As Object
Set strTemporaria = Me.Recordset.Clone
'constroi a string a filtrar
strProcura = "Left([" + strFiltragem + "],1) = " + Chr(34) + GrupoDeFiltragem.Controls.Item(GrupoDeFiltragem.Value - 1).Name + Chr(34)
'encontrar o primeiro registro do filtro
strTemporaria.FindFirst strProcura
'Se nenhum registro for encontrado, procura o mais próximo
If strTemporaria.NoMatch Then
strProcura = "Left([" + strFiltragem + "],1) >= " + Chr(34) + GrupoDeFiltragem.Controls.Item(GrupoDeFiltragem.Value - 1).Name + Chr(34)
Debug.Print strProcura
strTemporaria.FindFirst strProcura
End If
'se encontrado vai para o registro
If Not strTemporaria.NoMatch Then
Me.Bookmark = strTemporaria.Bookmark
End If
'se pressionado algum botão limpa o conjunto de registros
Me.GrupoDeFiltragem.Value = 0
Set strTemporaria = Nothing
End Sub
Obrigado