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

    [Resolvido]Função DMax, mais de uma tabela

    avatar
    WALDINEYNOLETO
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 16
    Registrado : 29/09/2013

    [Resolvido]Função DMax, mais de uma tabela Empty [Resolvido]Função DMax, mais de uma tabela

    Mensagem  WALDINEYNOLETO 24/6/2019, 04:24

    Olá Meus Amigos!

    tenho a seguinte função abaixo:

    Código:
    Public Function LAUDOEXTERNOS()
    Dim iLin1 As Long
    Dim ano As String
                  'traz o mair valor do registro
                  'se for 0 será inserido um novo registro
    iLin1 = Nz(DMax("CONTADOR", "TB_EXTERNAS"))
    ano = Year(Date)
                 'verifica se a variavel iLin é 0)
    If iLin1 = 0 Then
    LAUDOEXTERNOS = 1 & "/" & ano
                 'se não
    Else
                 'será o valar total de registro + 1
    LAUDOEXTERNOS = iLin1 + 1 & "/" & ano
    End If
    End Function
    No entanto ele serve para trazer o maior valor do campo: CONTADOR, da tabela: TB_EXTERNAS.

    o que eu preciso é de uma função que me trouxesse o maior valor entres os campos: CONTADOR das Tabelas:

    Tb_acidentes, campo: contador = 2
    Tb_mortes, campo: contador = 1
    Tb_patrimônios, campo: contador = 3
    Tb_setran, campo: contador = 5

    O valor trazido seria = 5

    Se eu não fui claro por favor me corrijam.
    thiagomcosta
    thiagomcosta
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 368
    Registrado : 23/01/2017

    [Resolvido]Função DMax, mais de uma tabela Empty Re: [Resolvido]Função DMax, mais de uma tabela

    Mensagem  thiagomcosta 24/6/2019, 13:42

    Sugiro fazer várias verificações, mantendo sempre o valor máximo na variável através e função IIF

    Código:
    iLinFinal = Nz(DMax("CONTADOR", "TB_EXTERNAS"))

    iLin1 = Nz(DMax("CONTADOR", "Tb_acidente"))
    iLinFinal = iif(iLin1 > iLinFinal, iLin1, iLinFinal)

    iLin1 = Nz(DMax("CONTADOR", "Tb_mortes"))
    iLinFinal = iif(iLin1 > iLinFinal, iLin1, iLinFinal)

    iLin1 = Nz(DMax("CONTADOR", "Tb_patrimônios"))
    iLinFinal = iif(iLin1 > iLinFinal, iLin1, iLinFinal)

    iLin1 = Nz(DMax("CONTADOR", "Tb_setran"))
    iLinFinal = iif(iLin1 > iLinFinal, iLin1, iLinFinal)

    LAUDOEXTERNOS = (iLinFinal + 1) & "/" & ano

    Tente adaptar à sua necessidade.
    Não existe uma função que faça isso diretamente.

    Outra solução seria escrever uma consulta SQL que fizesse um SELECT em cada tabela e retornasse somente o valor máximo.
    avatar
    WALDINEYNOLETO
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 16
    Registrado : 29/09/2013

    [Resolvido]Função DMax, mais de uma tabela Empty Função DMax, mais de uma tabela?

    Mensagem  WALDINEYNOLETO 25/6/2019, 22:42

    conseguir adaptar com if e o select case

    mais fui testar como ficaria em rede...

    tentei adicionar um registro ao mesmo tempo na tabela

    ele só adiciona o primeiro, e como todos abrem com os mesmo números

    a função não se atualiza ai dar duplicidade...


    assim voltei a estaca zero


    Última edição por WALDINEYNOLETO em 26/6/2019, 18:11, editado 1 vez(es)
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7284
    Registrado : 15/03/2013

    [Resolvido]Função DMax, mais de uma tabela Empty Re: [Resolvido]Função DMax, mais de uma tabela

    Mensagem  ahteixeira 25/6/2019, 23:20

    REGRAS DO FÓRUM

    1. Tenha paciência com quem coloca aqui as suas duvidas.
    2. Clareza nos títulos dos tópicos e duvidas, evite a linguagem MSN.
    3. Não colocar diversas vezes a mesma dúvida.
    4. Explicar detalhadamente o problema e informar a versão do seu Office + Sistema Operativo.
    5. Retorne sempre se deu certo, esse retorno é muito importante.
    6. Respeite toda a equipe Staff e demais membros deste fórum.
    7. Use sempre o botão Busca, sempre que tiver uma dúvida e antes de abrir tópicos.
    8. Não usar palavras como "Urgente". O fórum é livre e ninguém é obrigado a responder com urgência.
    9. A publicidade é proíbida e só pode ser feita pelo Administrador ou depois de aprovada pelo Administrador.
    10. Se o seu tópico não for respondido, tem o direito de fazer um Up ao final de 24horas!
    11. A colocação de Códigos ou Exemplos, devem constar sempre os créditos de quem o elaborou.
    12. Fale, não GRITE!   Só letras Maiúsculas, na Internet é o mesmo que gritar!
    13. É proibido tirar duvidas nas Salas de Repositório, devem abrir um novo tópico nas salas de duvidas, relacionando o Exemplo em causa.
    14. É proibido adicionar links externos nos tópicos, que redirecionem para outros sites ("backlinks").
    15. É permitido adicionar links externos, nos códigos VBA dentro das Base de Dados.


    Olá Waldiney,
    Ontem enviei a seguinte mensagem privada:
    [Resolvido]Função DMax, mais de uma tabela 068

    Aguardamos que regularize a situação, editando a sua mensagem nº 3.
    Espero o bom senso dos colegas em não dar continuidade ao tópico enquanto a situação não for regularizada.

    Abraço a todos
    avatar
    WALDINEYNOLETO
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 16
    Registrado : 29/09/2013

    [Resolvido]Função DMax, mais de uma tabela Empty [Resolvido]Função DMax, mais de uma tabela

    Mensagem  WALDINEYNOLETO 27/6/2019, 03:36

    Resolvi da seguinte forma:

    Criei uma nova tabela: TB_LAUDO_PCE
    ai nela criei um campo ID auto numeração e um campo LAUDO tipo texto,

    exemplo abaixo.

    Public Function LAUDOS()
    Dim iLIn1 As Long
    Dim ANO As String
    iLIn1 = Nz(DMax("LAUDO", "TB_LAUDO_PCE"), 0)
    'ANO = Year(Date)
    If iLIn1 = o Then
    LAUDOS = 1 '& "/" & ANO
    Else
    LAUDOS = iLIn1 + 1 '& "/" & ANO
    End If
    End Function

    assim posso utilizar vários formulários de uma mesma tabela, e busco o numero do laudo na tabela tb_laudo_pce
    através de um formulário, e jogo o número de laudo gerado para o outro formulário via botão kkk foi isso.
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7284
    Registrado : 15/03/2013

    [Resolvido]Função DMax, mais de uma tabela Empty Re: [Resolvido]Função DMax, mais de uma tabela

    Mensagem  ahteixeira 27/6/2019, 08:25

    Olá, obrigado pelo retorno.
    Situação regularizada.

    Abraço e bons estudos

      Data/hora atual: 28/7/2021, 23:42