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

    Concatenar em VBA e usando o rresultado

    avatar
    wilflx2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 31/01/2014

    Concatenar em VBA e usando o rresultado Empty Concatenar em VBA e usando o rresultado

    Mensagem  wilflx2 em 24/11/2019, 16:15


    Olá grande familia do Access!

    Não estou conseguindo fazer algo que acredito que seja muito simples para vocês. Seguinte, tenho uma tabela chamada tabUteroCad, e em um formulario de pesquisa quero retornar uns campos mas Concatenando eles, e com isso usando o WHERE, filtrar com base na concatenação.
    Segue o codigo:

    Código:
    Dim CarregaUteroPesq As String
       
        Me.txPesqUtero2.SetFocus
        'Carrega os dados no Subformulario sem pesquisa
        CarregaUteroPesq = "SELECT Identificação, Paciente, Numero," & _
        " Orgão, Cidade, Data, Protocolo, datadeliberacao, Concat(Paciente, Numero) AS Resultado" & _
        " FROM tabUteroCad" & _
        " WHERE Ano = " & Me.txAno & " AND Resultado LIKE """ & Chr(42) & TodosAcentos(Me.txPesqUtero2.Text) & Chr(42) & """" & _
        " ORDER BY Identificação DESC"

        Me.tabUteroPesqSub2.Form.RecordSource = CarregaUteroPesq
       
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!Identificação.ControlSource = "Identificação"
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!Paciente.ControlSource = "Paciente"
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!Numero.ControlSource = "Numero"
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!Orgão.ControlSource = "Orgão"
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!Cidade.ControlSource = "Cidade"
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!Data.ControlSource = "Data"
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!Protocolo.ControlSource = "Protocolo"
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!Numero.ControlSource = "Numero"
        Forms!frmUteroPesq2!tabUteroPesqSub2.Form!datadeliberacao.ControlSource = "datadeliberacao"
        Me.tabUteroPesqSub2.Requery
        Me.txPesqUtero2.SetFocus

    Não sei se deu para entender a ideia, mas acredito que vendo o codigo entenderam.
    Da-se o erro que a função CONCAT não é definida.
    O que estou fazendo aqui é uma ideia com base em leitura da internet, não sei realizar o processo, estou tentando entender o conceito e a forma de usar.

    Peço ajuda para resolver.

    Obrigado!
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1148
    Registrado : 13/12/2016

    Concatenar em VBA e usando o rresultado Empty Re: Concatenar em VBA e usando o rresultado

    Mensagem  Alexandre Fim em 25/11/2019, 13:26

    Bom dia Willian,

    A função CONCAT é utilizada no MS SQL Server, e para concatenar sua instrução, faça assim:

    [Paciente] &" - "& [Numero] &"" AS Resultado



    Boa sorte


    .................................................................................
    - Procure sempre anexar seu projeto para análise do problema/dúvida.
    - Ao copiar/colar um código VBA, procure entender seu funcionamento.
    - Se o problema foi resolvido, não se esqueça de marcar o tópico como RESOLVIDO.
    good guy
    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    Concatenar em VBA e usando o rresultado Empty Concatenar em VBA e usando o resultado

    Mensagem  good guy em 25/11/2019, 16:42

    Olá amigo,

    AO INVÉS DE:

    Concat(Paciente, Numero) AS Resultado" & _

    Tente assim:

    Concat([Paciente],":",[Numero]) " & _
    avatar
    wilflx2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 31/01/2014

    Concatenar em VBA e usando o rresultado Empty Re: Concatenar em VBA e usando o rresultado

    Mensagem  wilflx2 em 25/11/2019, 21:05


    Boa tarde!

    Obrigado pelas respostas, vou fazer os testes e volto a postar!


    avatar
    wilflx2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 31/01/2014

    Concatenar em VBA e usando o rresultado Empty Re: Concatenar em VBA e usando o rresultado

    Mensagem  wilflx2 em 28/11/2019, 12:46

    Bom dia!

    Amigos, não deu certo as opções, Alexandre Fim, fiz como voce disse e deu erro com a mensagem "Tipos incompativeis".

    good guy, tambem não deu certo, apresenta erro.

    Algo mais que posso tentar?
    avatar
    wilflx2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 31/01/2014

    Concatenar em VBA e usando o rresultado Empty Re: Concatenar em VBA e usando o rresultado

    Mensagem  wilflx2 em 28/11/2019, 12:59


    Pessoal meu problema é o seguinte, tentei Concatenar porque preciso que na pesquisa, retorne dados de 3 campos diferentes com um filtro por ano.
    Ex:

    Na busca preciso que primeiro de tudo, retorne os registros somente do ano de 2019, que tem uma caixa de texto para excolher o ano, txAno, dentro desse período preciso que ele busque de acordo com a informação que o usuário necessita inserido no campo txPesq, entre os campos, Paciente, Numero ou Protocolo.

    Com o Código que fiz, não consegui que filtrasse dentro do periodo do Ano, ele retorna dados de todos os anos, alguem tem uma ideia de onde estou errando?

    good guy
    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    Concatenar em VBA e usando o rresultado Empty Concatenar em VBA e usando o resultado

    Mensagem  good guy em 28/11/2019, 15:13

    Olá amigo,

    Posta uma amostra do seu bd para verificarmos e analisarmos o porquê dos erros. Quanto a tipos incompatíveis, verifique as declarações de suas variáveis se correspondem ao tipo de dados correto.

      Data/hora atual: 28/10/2020, 09:07