MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Textbox inverte texto durante inserção de caracteres

    mduarteteixeira
    mduarteteixeira
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 99
    Registrado : 15/07/2014

    [Resolvido]Textbox inverte texto durante inserção de caracteres Empty [Resolvido]Textbox inverte texto durante inserção de caracteres

    Mensagem  mduarteteixeira em 27/6/2019, 13:01

    Bom dia à todos,

    Possuo um formulário (junto com o subformulário chamado Credenciamento_Termo) com um campo de texto não acoplado que possui o seguinte código:

    Private Sub Pesquisar_Change()
    'pesquisa qualquer campo dentre Termo e Credenciado
    Dim C As String, X As String

    X = Me.Pesquisar.Text

    C = " where Termo_de_adesao like '*" & X & "*' or Credenciado like '*" & X & "*'"

    Me.Credenciamento_Termo.Form.RecordSource = " select * from Credenciamento_Termo " & C

    End Sub


    Ao inserir dados para pesquisar no subform, a cada caractere, o cursor vai se posicionando á esquerda, ou seja, se tento digita "Marcos", ele apresenta "socraM".

    Alguém sabe qual motivo disto estar acontecendo? Tenho um mesmo código em outro form, com a mesma funcionalidade e não ocorre este problema.

    Grato pela atenção!
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]Textbox inverte texto durante inserção de caracteres Empty Re: [Resolvido]Textbox inverte texto durante inserção de caracteres

    Mensagem  DamascenoJr. em 28/6/2019, 12:00

    Tente forçando a posição inicial do ponteiro no final do campo, assim

    Código:
    Private Sub Pesquisar_Change()
    'pesquisa qualquer campo dentre Termo e Credenciado
    Dim C As String, X As String

    X = Me.Pesquisar.Text

    C = " where Termo_de_adesao like '*" & X & "*' or Credenciado like '*" & X & "*'"

    Me.Credenciamento_Termo.Form.RecordSource = " select * from Credenciamento_Termo " & C

    Me.Pesquisar.SelStart = Len(Nz(Me.Pesquisar.Text)) 'adicionei isto

    End Sub

    Se não der certo, anexe aqui a parte do seu projeto para melhor precisão


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    mduarteteixeira
    mduarteteixeira
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 99
    Registrado : 15/07/2014

    [Resolvido]Textbox inverte texto durante inserção de caracteres Empty Re: [Resolvido]Textbox inverte texto durante inserção de caracteres

    Mensagem  mduarteteixeira em 28/6/2019, 13:19

    Bom dia Ivan,

    Perfeito amigo. Já testei no código e realmente ele fixa o ponteiro no fim do campo. Contudo ele não me permite usar o espaço. Tipo: quero escrever Marcos Duarte mas ele somente aceita MarcosDuarte, sem espaço.

    Tem ideia de algo que além de força o ponteiro ainda permita utilizar espaço?

    Já grato pela atenção.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]Textbox inverte texto durante inserção de caracteres Empty Re: [Resolvido]Textbox inverte texto durante inserção de caracteres

    Mensagem  DamascenoJr. em 29/6/2019, 02:26

    faça uma cópia do seu arquivo e exclua dela as partes que não são importantes na dúvida desde tópico, após isso anexe-a aqui para que possamos encontrar a raiz do problema.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    mduarteteixeira
    mduarteteixeira
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 99
    Registrado : 15/07/2014

    [Resolvido]Textbox inverte texto durante inserção de caracteres Empty Re: [Resolvido]Textbox inverte texto durante inserção de caracteres

    Mensagem  mduarteteixeira em 1/7/2019, 12:17

    Opa, bom dia Ivan.

    Nesse meio tempo consegui adaptar um código que achei em outro lugar. Mas, se você fizer uma comparação entre os códigos dos dois forms que possuem a busca, o método deste que achei é meio estranho.

    Esse código (onde ainda está esquisito) está no form Termo. O Outro, que você me instruiu aqui, está no form OS.

    Obrigado.
    Anexos
    [Resolvido]Textbox inverte texto durante inserção de caracteres Attachment2º Teste Pesquisar - maximoAccess.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (341 Kb) Baixado 2 vez(es)
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]Textbox inverte texto durante inserção de caracteres Empty Re: [Resolvido]Textbox inverte texto durante inserção de caracteres

    Mensagem  DamascenoJr. em 3/7/2019, 03:51

    Abri os forms e em ambos consegui digitar Marcos Duarte sem nenhum problema.

    Por favor, descreva melhor as ações que devo executar para me deparar com o problema. Caso não haja mais problemas, dê o tópico como resolvido.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    mduarteteixeira
    mduarteteixeira
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 99
    Registrado : 15/07/2014

    [Resolvido]Textbox inverte texto durante inserção de caracteres Empty Re: [Resolvido]Textbox inverte texto durante inserção de caracteres

    Mensagem  mduarteteixeira em 3/7/2019, 12:18

    Bom dia Ivan,

    Realmente ele faz as pesquisas em ambos e localiza normal os registros.

    No caso do form OS, tudo ok.

    No caso do form Termo: o que achei estranho é que, se você busca um registro do campo Termo_de_adesão (que possui o formato padrão 0000/00 e é exclusivo), ele somente localiza o registro a partir do 4º ou 5º caractere digitado.

    Exemplo: que buscar o Termo_de_adesao de nº 0456/16. Se eu digitar apenas 0456, ele localiza inicialmente o registro do 0045/16. Aí, quando eu digito a / , ele localiza finalmente o que busco, 0456/16

    Mas, acho que isso já se torna um exagero da minha parte. Está funcionando conforme a necessidade. Acho que não vou mais me aprofundar nisso.

    Lhe agradeço muito a ajuda e atenção. E seguem om códigos utilizados para funcionar a pesquisa em campo de texto:

    Código:
    Option Compare Database
    Option Explicit
    Private Sub Pesquisar_Change()
    'pesquisa qualquer campo dentre Termo e Credenciado
    On Error Resume Next
    Dim C As String, X As String
    Dim strText As String
    Dim lngSelStart As Long

        strText = Me.Pesquisar.Text
        lngSelStart = Me.Pesquisar.SelStart
        

        If Not IsNull(Me.Pesquisar.Text) Then
            X = Nz(Me.Pesquisar.Value, "")
            C = " WHERE Termo_de_adesao LIKE '*" & X & "*' OR Credenciado LIKE '*" & X & "*'"
            Me.Credenciamento_Termo.Form.RecordSource = " SELECT * FROM Credenciamento_Termo " & C
            Me.FilterOn = True
            Me.Pesquisar = strText
            Me.Pesquisar.SelStart = lngSelStart
            
                  
        Else
            Me.Filter = Empty
            Me.FilterOn = True
            Me.Pesquisar.SetFocus
        End If

    End Sub

    Private Sub Pesquisar_LostFocus()
    Me.Refresh
    Me.Requery
    Me.Pesquisar.Value = ""
    End Sub

      Data/hora atual: 14/8/2020, 02:53