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

5 participantes

    [Resolvido]Como fazer uma tabela contínua?

    avatar
    Rsygma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 23/03/2016

    [Resolvido]Como fazer uma tabela contínua? Empty [Resolvido]Como fazer uma tabela contínua?

    Mensagem  Rsygma Sex 28 Set 2018, 12:03 am

    Olá amigos,

    Tenho um Bd gerado a cada ano (2014/2015...) e gostaria de saber se vale a pela e, se sim, como fazer para montar uma única tabela, uma vez que, a cada ano, ela tem que começar a contar os registros do 001...ou seja, registro 001 de 2018.....001 de 2019...etc.

    Valeu.
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8251
    Registrado : 05/11/2009

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  Alexandre Neves Sex 28 Set 2018, 12:37 pm

    Boa tarde
    Tenha a tabela e acrescente campo AnoReg para preencher com o ano


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1344
    Registrado : 07/12/2011

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  tauron Sex 28 Set 2018, 7:13 pm

    De uma olhada no link abaixo,tem um exemplo na mensagem 8.
    avatar
    Rsygma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 23/03/2016

    [Resolvido]Como fazer uma tabela contínua? Empty Como fazer uma tabela contínua?

    Mensagem  Rsygma Sex 28 Set 2018, 9:56 pm

    Tauron, onde esta o link?
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1344
    Registrado : 07/12/2011

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  tauron Sex 28 Set 2018, 10:44 pm

    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1344
    Registrado : 07/12/2011

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  tauron Ter 02 Out 2018, 9:06 pm

    Question
    avatar
    Rsygma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 23/03/2016

    [Resolvido]Como fazer uma tabela contínua? Empty Como fazer uma tabela contínua?

    Mensagem  Rsygma Qua 24 Out 2018, 8:37 pm

    Tauron,



    Esse arquivo eu já vi, os números eu já coloquei automaticamente, o que eu quero é o seguinte: tenho a tabela do ano de 2018 com os arquivos 01,02......etc; gostaria de, ao mudar para o ano de 2019, essa tabela inciasse a contagem novamente:01,02,03.....etc.; tem como?

    Desculpe pela demora na resposta e, obrigado.....
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1344
    Registrado : 07/12/2011

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  tauron Seg 29 Out 2018, 10:00 pm

    Voce pretende implementar (antes de inserir dados) ou modificar (ja existem dados)?

    O exemplo que passei sera para o caso de implementar.
    Anexos
    [Resolvido]Como fazer uma tabela contínua? AttachmentNumerar.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (25 Kb) Baixado 17 vez(es)
    avatar
    Rsygma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 23/03/2016

    [Resolvido]Como fazer uma tabela contínua? Empty Como fazer uma tabela contínua?

    Mensagem  Rsygma Ter 30 Out 2018, 3:13 pm

    Tauron,


    Na verdade eu preciso que a tabela, a cada novo ano, recomece a contar o numero automaticamente (01,02,03....), veja meu arquivo:
    Preciso que, na virada do ano (2018/2019) a numeração automática volte a contar do 1.


    Mesmo assim, valeu!!! Very Happy
    Anexos
    [Resolvido]Como fazer uma tabela contínua? AttachmentSistema RDO.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (756 Kb) Baixado 5 vez(es)
    avatar
    FabioGO
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 106
    Registrado : 22/08/2012

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  FabioGO Ter 30 Out 2018, 6:38 pm

    Não sei se é a melhor forma de fazer, mas vou tentar ajudar.

    Fiz uma proposta que é:

    1)Criei um novo campo na tabela de cadastro com o nome HoraReg (com o valor padrão =Agora()), para registrar a hora do cadastro e também um novo campo para o numero do BO, com o nome NumBO.

    2)Vinculei o campo do formulário BO_n° com o novo campo da tabela NumBO

    3)No evento apos atualizar do seu campo Data no formulario frm_Guias, coloquei o código abaixo:

    Código:
    Dim rs As DAO.Recordset

    Set rs = CurrentDb.OpenRecordset("SELECT * From Tab_Cadastro ORDER BY Data, HoraReg") ' abre a tabela e ordena pelo campo Data e depois HoraReg

    If Nz(rs.RecordCount) = 0 Then ' confere se há registros na tabela

        Me.BO_nº = 1 ' se não houver registros, o valor para o BO_n° será 1
            
    ElseIf DCount("*", "Tab_Cadastro", "Year([Data])='" & Year(Nz(Me.Data, 0)) & "'") > 0 Then 'se houver registros com o mesmo ano do cadastro do registro atual
        
        rs.MoveLast  'move para o ultimo registro
        Me.BO_nº = Nz(rs!NumBO + 1, 0) 'pega o valor do ultimo numero do BO e soma mais 1 para o próximo registro
        
    ElseIf DCount("*", "Tab_Cadastro", "Year([Data])='" & Year(Nz(Me.Data, 0)) & "'") = 0 Then 'se não houver registros com o mesmo ano do cadastro atual

        Me.BO_nº = 1 'o numero do BO será 1 para esse ano
        
    End If
        
    rs.Close
    Me.Refresh

    Teste para ver, se não for o que precisa, espere algum mestre ajudar.

    Se for o que precisa e tiver duvidas, é só perguntar.
    Anexos
    [Resolvido]Como fazer uma tabela contínua? AttachmentSistema RDO.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (808 Kb) Baixado 16 vez(es)


    Última edição por FabioGO em Qui 01 Nov 2018, 12:05 pm, editado 1 vez(es)
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1344
    Registrado : 07/12/2011

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  tauron Ter 30 Out 2018, 7:18 pm

    O exemplo que disponibilizei faz exatamente isso. Um dos formularios esta de maneira que a numeracao eh reiniciada mensalmente e o outro anual. Faca o teste alterando o calendario do seu pc?
    avatar
    flecha
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 289
    Registrado : 11/01/2012

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  flecha Qua 31 Out 2018, 5:13 pm

    Rsygma,
    uso essa sub para um programa de Entrevista, que para cada entrevista o form cria um número / Ano Ex: 001/2018......
    Acho que foi aqui no forum (JPaulo) que ajudou, não lembro quem indicou.

    https://www.maximoaccess.com/t11502-resolvidonumeracao-personalizada-no-formulario?highlight=nextNumAno#90456

    Modifique seu campo  BO nº do Tab.Cadastro  para Texto

    No Form Cadastro no campo BO nº entre em Propriedades e na linha  Valor Padrão coloque =NextNumAno()

    Teste ai!

    Código:

    Public Function NextNumAno() As String
    'Gera o próximo código da tabela de numeração/ano
    Dim db As DAO.Database
    Dim rst As DAO.Recordset
    Dim intYear As Integer
    Dim strSql As String

    'Ano atual, conforme o sistema
    intYear = Year(Date)

    'Verifica o último código para o ano
    strSql = "SELECT CLng(Left$(NumAno, Len(NumAno)-5)) As Num, " & _
    "CInt(Right$(NumAno, 4)) As Ano FROM tab_Entrevista " & _
    "WHERE CInt(Right$(NumAno, 4))=" & CStr(intYear) & _
    " ORDER BY CLng(Left$(NumAno, Len(NumAno)-5)) DESC"
    Set db = CurrentDb()
    Set rst = db.OpenRecordset(strSql, dbOpenDynaset)
    With rst
        If .BOF And .EOF Then
            'NextNumAno = "1" & CStr(intYear) ' Tirei a Barra e coloquei ponto AGORA SEM PONTO.
            NextNumAno = "1." & CStr(intYear) ' Tirei a Barra e coloquei ponto
        Else
            .MoveFirst
            'NextNumAno = CStr(!Num + 1) & CStr(intYear) ' Tirei a Barra e coloquei ponto AGORA SEM PONTO.
            NextNumAno = CStr(Format(!Num + 1, "000")) & "." & CStr(intYear) ' Tirei a Barra e coloquei ponto
        End If
        .Close
    End With
    Set rst = Nothing
    Set db = Nothing
    End Function

    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1344
    Registrado : 07/12/2011

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  tauron Seg 05 Nov 2018, 9:42 am

    Question
    avatar
    Rsygma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 23/03/2016

    [Resolvido]Como fazer uma tabela contínua? Empty Como fazer uma tabela contínua?

    Mensagem  Rsygma Seg 05 Nov 2018, 10:51 am

    Desculpe-me pela demora na resposta.

    Obrigado pela ajuda as duas alternativas funcionam muito bem, mas já estou até trabalhando com o modelo do Tauron.

    Novamente obrigado pela ajuda, aprendi mais....

    Valeu.
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1344
    Registrado : 07/12/2011

    [Resolvido]Como fazer uma tabela contínua? Empty Re: [Resolvido]Como fazer uma tabela contínua?

    Mensagem  tauron Seg 05 Nov 2018, 11:10 am

    Obrigado pelo retorno, o forum agradece.

      Data/hora atual: Sab 26 Nov 2022, 6:10 pm