IGNORAR ACENTOS EM BUSCA

ALEXRONCHI 25/05/2011 17:25:49
#374988
Olá! Gostaria de saber, se existe uma forma de algo fazer uma busca no banco de dados, ele ignorar os acentos, exemplo:

No banco está cadastrado, balança ai a pessoa ao fazer a busca digita balanca, e ele achar? E por ai vai com os outros acentos também

Valeu!!!!
MARCELO.TREZE 25/05/2011 19:02:41
#374991
Resposta escolhida
se for certo que no banco não existem acentos bastaria usar uma função para retirar os acentos.

ex:

Private Function SemAcento(ByVal Lin As String) As String
Dim T1 As String, T2 As String, i As Integer, p As Integer, C As String

T1$ = [Ô]ÀÈàèÁéÍÓÚáéíóúÇçÂÊÔâêôÃÑÕãñõÜü[Ô] [ô]Com acento
T2$ = [Ô]AEaeAEIOUaeiouCcAEOaeoANOanoUu[Ô] [ô]Sem acento
p = 1 [ô]sempre na primeira posição

For i = 1 To Len(Lin$) [ô]cada letra
C$ = Mid$(Lin$, i, 1) [ô]pega o caracter
p = InStr(T1$, C$) [ô]tem acento correpondente?
If p Then [ô]tem...
Lin$ = Left$(Lin$, i - 1) + Mid$(T2$, p, 1) + Mid$(Lin$, i + 1) [ô]troca pelo correpondente
End If
Next
SemAcento= Lin$ [ô]Retorna as string sem acento
End Function


para usar seria fácil

sSQL = [Ô]SELECT * FROM tabela WHERE nome = [ô][Ô] & SemAcento(txtPesquisa.Text) & [Ô][ô][Ô]


boa sorte



ALEXRONCHI 25/05/2011 19:37:43
#374992
Valeu pela ajuda Marcelo
Tópico encerrado , respostas não são mais permitidas