MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

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


3 participantes

    [Resolvido]Select... Where

    avatar
    Adao Carlos Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 23/11/2015

    [Resolvido]Select... Where Empty [Resolvido]Select... Where

    Mensagem  Adao Carlos Alves Seg 23 Nov 2015, 15:09

    Olá Pessoal!

    Tenho uma tabela com as seguintes colunas:
    Coluna1     Coluna2      Coluna3             Coluna4
    12345678      10         10/10/2015           João
    90123456       5          10/10/2015           Maria
    78901234       5          10/10/2015           Carlos
    12345678      10          10/10/2015           Marcos

    Usei a seguinte instrução:

    Public Function fNomes(Coluna 1 As Double) As String

    Dim rs As Recordset

    Set rs = CurrentDb.OpenRecordset("Select Coluna 4 From tabela Where (Coluna1, coluna2, coluna3) = " & coluna 1, " & coluna2, " & coluna3)
    Dim str As String

    str = rs!Coluna4
    rs.MoveNext
    Do While Not rs.EOF
       str = str & ", " & rs!NomeGuerra
       rs.MoveNext
    Loop
    fNomes = str
    rs.Close

    End Function


    Sempre da erro?

    O resultado que esperava:

    Coluna1     Coluna2      Coluna3             Coluna4
    12345678      10         10/10/2015           João, Marcos
    90123456       5          10/10/2015           Maria
    78901234       5          10/10/2015           Carlos
         


    Alguma dica???


    Obrigado a todos....
    clynton
    clynton
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 309
    Registrado : 08/07/2013

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  clynton Seg 23 Nov 2015, 19:24

    Adão, bem vindo ao Fórum!

    As informações estão subentendidas...
    ...descreva por favor que tipo de informações são essas.
    Exemplo: O que é para a primeira linha: 12345678, 10, 10/10/2015 e João.
    Pergunto porque ficou impossível compreender, já que os nomes dos campos estão como: Coluna1, Coluna2, Coluna3 e Coluna4.
    Onde e de que forma pretende exibir o resultado?
    Passe o nome da Tabela, se tiver alguma Consulta, informe o nome também e claro o nome dos Formulários.
    Se não for simplesmente o resultado de uma consulta, diga-nos que processo exatamente está tentando executar.


    .................................................................................
    Cumprimentos...


    Atenciosamente,
    Rogério Clynton Ribeiro


    __________________________________________________________________________

    "Ninguém é tão grande que não possa aprender e nem tão pequeno que não possa ensinar."
    avatar
    Adao Carlos Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 23/11/2015

    [Resolvido]Select... Where Empty Select... Where

    Mensagem  Adao Carlos Alves Seg 23 Nov 2015, 23:23

    Sim, é uma consulta onde quero mostrar os dados agrupados das colunas ordem, ppu e data, já a coluna NomeGuerra fique em linha com os nomes separados por vírgula. Usei o código que enviei anteriormente, funciona apenas com uma das colunas (Ordem, PPU, Data), mas o que preciso é que os nomes mostrados sejam aqueles onde o conteúdo da coluna se repetir nas três colunas citadas.

    Espero ter esclarecido...


    Por exemplo:

    Ordem PPU Data Fnomes (ordem, ppu, data)
    2009747200 0 13/11/2015 FABIANO
    2009747200 0 13/11/2015 ALESSANDRO
    2009747200 100 12/11/2015 DÊNIS
    2009747200 100 13/11/2015 MARCOS
    2009747200 100 13/11/2015 DÊNIS
    2009747200 100 13/11/2015 DÊNIS

    Aplicando o código ficaria

    Ordem PPU Data Fnomes (ordem, ppu, data)
    2009747200 0 13/11/2015 FABIANO, ALESSANDRO
    2009747200 100 12/11/2015 DÊNIS
    2009747200 100 13/11/2015 DÊNIS, MARCOS


    Public Function fNomes(ORDEM As Double) As String

    Dim rs As Recordset

    Set rs = CurrentDb.OpenRecordset("Select NomeGuerra From teste Where[ORDEM]= " & ORDEM)
    Dim str As String

    str = rs!NomeGuerra
    rs.MoveNext
    Do While Not rs.EOF
    str = str & ", " & rs!NomeGuerra
    rs.MoveNext
    Loop
    fNomes = str
    rs.Close

    End Function




    clynton
    clynton
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 309
    Registrado : 08/07/2013

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  clynton Ter 24 Nov 2015, 15:28

    Pretende exibir o resultado da Consulta numa Caixa de Listagem ou Grade?!


    .................................................................................
    Cumprimentos...


    Atenciosamente,
    Rogério Clynton Ribeiro


    __________________________________________________________________________

    "Ninguém é tão grande que não possa aprender e nem tão pequeno que não possa ensinar."
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Cláudio Más Ter 24 Nov 2015, 16:13

    Set rs = CurrentDb.OpenRecordset("Select Coluna4 From tabela Where Coluna1 = " & [coluna 1] & " And coluna2 = " & coluna2 & " And coluna3 = " & coluna3)
    avatar
    Adao Carlos Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 23/11/2015

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Adao Carlos Alves Qua 25 Nov 2015, 16:06

    Cláudio,

    Funcionou parcialmente, ou seja, com a colunas1 e coluna2 funciona perfeitamente, mas quando acrescento a coluna3 dá: "erro de tempo de execução - nenhum registro atual", ao depurar destaca em amarelo a linha "str = rs!NomeGuerra".
    Tentei declarar de duas formas:
    Public Function fNomes(campo1 As Double, campo2 As Double, campo3 as date) As String
    Public Function fNomes(campo1, campo2, campo3) As String
    Entretanto nenhuma funcionou. Conferi o tipo de dados na tabela referente ao campo3 e está data/hora.

    Outra dúvida: Gostaria que o campo4 não mostra-se valor repetidos, exemplo: tenho quatro situação onde aparece o nome joão, preciso que o resultado seja apenas joão e não joão, joão, joão, joão, em caso de nomes diferentes aí sim joão, maria, joana, margarida.

    Funciona:
    Set rs = CurrentDb.OpenRecordset("Select Coluna4 From tabela Where Coluna1 = " & [coluna 1] & " And coluna2 = " & coluna2)

    Não Funciona:
    Set rs = CurrentDb.OpenRecordset("Select Coluna4 From tabela Where Coluna1 = " & [coluna 1] & " And coluna2 = " & coluna2 & " And coluna3 = " & coluna3)

    Clynton,

    Exibir na Grade..


    Obrigado pelo apoio...

    Grato!
    avatar
    Adao Carlos Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 23/11/2015

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Adao Carlos Alves Qua 25 Nov 2015, 16:15

    Desculpe a linha que destaca ao depurar é "str = rs!campo4".
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Cláudio Más Qua 25 Nov 2015, 16:32

    Set rs = CurrentDb.OpenRecordset("Select Coluna4 From tabela Where Coluna1 = " & coluna1 & " And coluna2 = " & coluna2 & " And coluna3 = #" & coluna3 & "# Group By Coluna4")
    If rs.EOF then
       str=""
    Else
    avatar
    Adao Carlos Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 23/11/2015

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Adao Carlos Alves Qua 25 Nov 2015, 20:00

    Claúdio,

    O código ficou como abaixo, por gentileza dá uma olhadinha e vê se consegue ajudar, não funcionou...

    Obrigado!

    Public Function fNomes15(ordem As Long, ppu As Integer, data As Date) As String

    Dim rs As Recordset

    Set rs = CurrentDb.OpenRecordset("Select NomeGuerra From Teste Where ordem =" & ordem & " And ppu = " & ppu & " And data = # " & data & "# Group by NomeGuerra")
    Dim str As String
    If rs.EOF Then
      str = ""
    Else
    str = rs!NomeGuerra 'A execução do código parou aqui'
    rs.MoveNext
    Do While Not rs.EOF
       str = str & ", " & rs!NomeGuerra
       rs.MoveNext
    Loop
    fNomes = str
    rs.Close
    End If


    End Function
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Cláudio Más Qua 25 Nov 2015, 20:27

    Talvez tenha que formatar a data:

    Set rs = CurrentDb.OpenRecordset("Select NomeGuerra From Teste Where ordem =" & ordem & " And ppu = " & ppu & " And Format$(data,'dd/mm/yy') = '" & Format$(data,"dd/mm/yy") & "' Group by NomeGuerra")

    Se ainda não funcionar, pode ter relação com os dados, nesse caso vou precisar de uma cópia do banco de dados.
    avatar
    Adao Carlos Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 23/11/2015

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Adao Carlos Alves Seg 30 Nov 2015, 11:33

    Cláudio,

    Muito obrigado!

    Funcionou perfeitamente.
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Cláudio Más Seg 30 Nov 2015, 12:22

    De nada, valeu.

    Conteúdo patrocinado


    [Resolvido]Select... Where Empty Re: [Resolvido]Select... Where

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Qui 07 Nov 2024, 18:38