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


4 participantes

    [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    APJesus
    APJesus
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 367
    Registrado : 21/09/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  APJesus 24/2/2014, 19:52

    Pessoal, Boa Tarde!
    Consegui um código aqui no fórum a muito tempo que me foi útil em quase 100% neste momento e gostaria se possível adaptar para minha necessidade.
    Copiei este Código(Módulo) onde consigo retornar no campo que quero numerar o número do ID da Tabela + o ano atual, sendo que na virada do ano é reiniciado a numeração partindo do início. Segue exemplo onde funciona na perfeição:

    Registro
    ID: 12 , retorna 0012/2014
    ID: 13 , retorna 0013/2014 e assim por diante.
    Quando da virada do ano, segue:
    Exibe uma mensagem avisando que o ano virou e será iniciado uma nova contagem. Segue:
    ID: 234, retorna 0001/2015 (isto na virada do ano).

    O que quero seria incluir o MÊS no meio desta numeração, como segue:

    ID: 12, retorna 0012.02/2014 (Este seria o mês de fevereiro), segue o módulo:

    Public Function ContaRegistros(strCampo As String, strSql As String)

    Dim strNum As String, db As Database
    Dim strMax As String, CampoAno As String
    Dim AnoData As String, tbl As Recordset

    Set db = CurrentDb

    AnoData = Year(Date)
       
     
       Set tbl = db.OpenRecordset(strSql)
       
       If tbl.RecordCount = 0 Then
     
       ContaRegistros = 1 & "/" & AnoData
    Else
       
       strMax = tbl(strCampo)
     
       CampoAno = Mid(strMax, (InStr(1, strMax, "/")) + 1, 4)
     
       If CampoAno = AnoData Then
          strNum = left(strMax, (InStr(1, strMax, "/") - 1)) + 1
          ContaRegistros = strNum & "/" & AnoData
       Else
          MsgBox "O sistema iniciará uma nova contagem dos registros" _
                 & vbCrLf & " em função do ano ter mudado", vbInformation, "ATENÇÃO..."
          ContaRegistros = 1 & "/" & AnoData
       End If
    End If
    ContaRegistros = StrZero(ContaRegistros, 10)
    tbl.Close
    Set db = Nothing
    End Function

    Gostaria de saber onde entraria o mÊs neste código.

    desde já agradeço,


    Última edição por APJesus em 24/2/2014, 19:54, editado 1 vez(es) (Motivo da edição : Erro no código.)
    Marco Messa
    Marco Messa
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 291
    Registrado : 28/06/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  Marco Messa 25/2/2014, 13:43

    Bom dia AP,

    Eu fiz algumas alterações no código, porém não pude testar pois não tenho Access instalado, dê uma olhada:

    Código:

    -- Sempre defina o tipo de retorno das funções, caso contrário sempre retornará tipo Variant (ocupa mais espaço na RAM)
    Public Function ContaRegistros(strCampo As String, strSql As String) As String
        Dim strNum As String, db As Database, tbl As Recordset
        Dim strMax As String, CampoAno As String
        Dim MesData As String, AnoData As String
        
        Set db = CurrentDb
        
        MesData = Month(Date)
        AnoData = Year(Date)
        
        Set tbl = db.OpenRecordset(strSql)
        
        If tbl.RecordCount = 0 Then
            ContaRegistros = 1 & "." & MesData & "/" & AnoData
        Else
           strMax = tbl(strCampo)
           CampoAno = Mid(strMax, (InStr(1, strMax, "/")) + 1, 4)
          
           If CampoAno = AnoData Then
              strNum = Left(strMax, (InStr(1, strMax, "/") - 1)) + 1
              ContaRegistros = strNum & "." & MesData & "/" & AnoData
           Else
              MsgBox "O sistema iniciará uma nova contagem dos registros" _
                     & vbCrLf & " em função do ano ter mudado", vbInformation, "ATENÇÃO..."
              ContaRegistros = 1 & "." & MesData & "/" & AnoData
           End If
        End If
        
        ContaRegistros = StrZero(ContaRegistros, 10)
        tbl.Close
        
        Set db = Nothing
    End Function


    .................................................................................
    Tea with me that I book your face Cool
    APJesus
    APJesus
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 367
    Registrado : 21/09/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  APJesus 25/2/2014, 16:46

    Perfeito!
    Funcionou na totalidade. Muito agradecido...
    Em breve vou postar o BD para exemplo.
    Mais uma vez muito grato,
    APJesus
    APJesus
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 367
    Registrado : 21/09/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  APJesus 10/4/2014, 15:28

    Amigos do fórum! Estou com um problema no código que nosso amigo Marco Messa, gerou uma adaptação onde testei e funcionou como mencionado em post anterior, mas agora está com um erro.

    O número sequencial é acrescido de valores multiplicados.

    Ex:
    Primeiro lançamento nº 00001.4/2014 (Onde 1 é o registro, o 4 é o mês e 2014 é o ano)
    No próximo lançamento me retorna 00015.4/2014 (Acrescentou 14 números)
    No Próximo lançamento me retorna 00155.4/2014 (Acrescentou 140 números)
    No próximo lançamento me retorna 01555.4/2014 (Acrescentou 1400 números), ou seja está multiplicando o últimovalor acrescido por 10 ( ex: 14x10, 140x10 e assim sucessivamente).
    Caso alguém possa me ajudar nesta questão.
    Marco Messa , se puder testar.
    Fico no aguardo e desde já agradeço,
    Att
    APJesus
    APJesus
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 367
    Registrado : 21/09/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  APJesus 11/4/2014, 11:45

    ...
    APJesus
    APJesus
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 367
    Registrado : 21/09/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  APJesus 12/4/2014, 13:15

    ...
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  Noobezinho 12/4/2014, 15:02

    Alessandro

    Experimente esse código que modifiquei para você de um outro tópico que ajudei.

    Lembrando que o campo do código é texto.

    Experimente adaptá-lo ao teu código

    Abraços

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    APJesus
    APJesus
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 367
    Registrado : 21/09/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  APJesus 12/4/2014, 19:04

    consegue converter para 2003?
    Desde já agradeço
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  Noobezinho 12/4/2014, 19:56

    Oops , esqueci de colocar em mdb também


    Mas taí


    Abraços

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    APJesus
    APJesus
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 367
    Registrado : 21/09/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  APJesus 13/4/2014, 00:47

    Noobezinho, muito grato pela atenção. Já salvei como exemplo aqui.
    Mas tem um porém. Funciona para todo o ano, mas quando virar o ano ele dá continuidade na sequencia dos registros. Ex:

    000324.12.2014 este seria o último registro de 2014, quando vou inserir o 1º em 2015, me retorna 000325.1.2015, onde na verdade quero que fique como 00001.1.2015 e no código que postei anteriormente faz desta maneira. O que me intriga é que estava funcionando e não consigo identificar onde alterei que não consigo retomar.
    Mai uma vez muito obrigado

    Fernando Bueno
    Fernando Bueno
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2115
    Registrado : 13/04/2012

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  Fernando Bueno 13/4/2014, 05:33

    Boa noite amigo, ve se da certo esse..


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    [Resolvido]Contador com Numeração Automática/ Mês/Ano! 16rzeq
    APJesus
    APJesus
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 367
    Registrado : 21/09/2010

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  APJesus 14/4/2014, 00:19

    Fernando Amigão exatamente isso. Vou adaptar ao meu projeto.
    Mai uma vez fico grato,
    Ao Noob fico grato pela atenção e ajuda.
    Att,
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2115
    Registrado : 13/04/2012

    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  Fernando Bueno 14/4/2014, 14:17

    Agradecemos o retorno... Sucesso!!


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    [Resolvido]Contador com Numeração Automática/ Mês/Ano! 16rzeq

    Conteúdo patrocinado


    [Resolvido]Contador com Numeração Automática/ Mês/Ano! Empty Re: [Resolvido]Contador com Numeração Automática/ Mês/Ano!

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 7/11/2024, 17:46