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]acrescentar numeraçao em campo via código vba

    avatar
    renatojmaia
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 16/11/2012

    [Resolvido]acrescentar numeraçao em campo via código vba Empty [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  renatojmaia 13/1/2014, 13:18

    tenho banco de dados em que, a função numeração automativa não funcionou corretamente, pois os registro passam de uma tabela para outra, então a num. autm. dá conflito.
    gostaria de sebar se há como colocar um campo em que quando clicar no botão novo viria o numero do último registro e acresentasse mais um. (como se fosse uma numeração automática).
    por exemplo, o campo "identificacao" e que não desse conflito quando eu passasse o registro de uma tabela para outra (no meu casso tenho duas tabela "relacaogeral" e "servidorinativo")


    Última edição por renatojmaia em 13/1/2014, 18:16, editado 1 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 13/1/2014, 15: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.
    avatar
    renatojmaia
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 16/11/2012

    [Resolvido]acrescentar numeraçao em campo via código vba Empty Acrescentar registro na tabela com numeração via cógigo vba

    Mensagem  renatojmaia 13/1/2014, 16:04

    Desculpe, se transgredir as regras do Fórum, mesmo que tenha colocado em maiúscula não foi a intenção de GRITAR para ser atendido, quanto a clareza na descrição da problemática talvez este sim seja o principal.

    Vamos aos fatos:
    1º - Gostaria de colocar em um campo na tabela com uma numeração que seguisse o número do registro anterior + 1 (utilizando o formulário no botão novo registro);
    2º - Como os registro passam de uma tabela para outra (no meu caso são duas tabela "RelacaoCompleta" e "ServidoresInativos") não haja conflito nessa circulação, pois tem um formulário "frmMoverServidor" que faz essa movimentação.
         Nesta movimentação o número de identificação permanecesse o mesmo sempre.
    3º Segue o exemplo do meu BD.

    Arquivo BD


    Última edição por renatojmaia em 13/1/2014, 16:09, editado 3 vez(es) (Motivo da edição : editar)
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 13/1/2014, 17:15

    amigo, tenho certeza que sua intenção não foi gritar, mas é essencial você ter conhecimento das regras do fórum para que não continue infringindo-as. Peço a gentileza que edite o primeiro post para sua correção.
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 14/1/2014, 00:11

    Pelo que entendi são 2 pedidos de ajudada que você precisa, vamos ao primeiro, veja esse tópico onde outro colega tinha a mesma situação, ou seja, em um campo ele pega o último registro acrescentando o 1, baixe o exemplo que eu postei e tente adaptá-lo ao seu projeto, se tiver dificuldade na adaptação é só dizer. que eu o ajudarei.
    http://maximoaccess.forumeiros.com/t16346-resolvidoauto-numerar
    avatar
    renatojmaia
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 16/11/2012

    [Resolvido]acrescentar numeraçao em campo via código vba Empty acrescentar numeraçao em campo via código vba

    Mensagem  renatojmaia 15/1/2014, 14:14

    Estou estudando o exemplo, que funciona perfeitamente, mais como o meu BD já tem inúmeros registros ele começar a contar de um números já cadastrado.
    Vou continuar tentando assim que encontrar dificuldade irei repassar.
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 15/1/2014, 22:17

    É só usar a instrução update somando normalmente o campo ao 1 e depois substituir pelo código que pega o último registro somando ao 1.
    avatar
    renatojmaia
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 16/11/2012

    [Resolvido]acrescentar numeraçao em campo via código vba Empty Duvida

    Mensagem  renatojmaia 19/1/2014, 13:32

    Desculpe mais não entendi! sua colocação.

    O que fiz! coloquei o seguinte código.

    Código:
     DoCmd.GoToRecord , , acNewRec
        SQL = "update dados set identificacao ='" & DLast("[IDENTIFICACAO]", "RelacaoCompleta") + 1
        CurrentDb.Execute (SQL)

    me retorna o seguinte erro:
    ......
    Erro em tempo de execução '3075':
    Erro de sintaxe na sequência de caracteres na expressão de consulta "404".
    ......


    Pois quando utilizo o código de seu exemplo o resultado é apenas o numero 404 que fica no campo IDENTIFICACAO. não pega o ultimo registro e soma mais 1
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 19/1/2014, 15:39

    Terás que preencher primeiro os campos dos registros existentes, coloca isso no eento ao clicar de um botão: CurrentDb.Execute "Update NomeDaTabela SET CampoQueVaiReceberNumeração = CampoASerAcrescido + 1 WHERE ChavePrimáriaDaTabela = CódigoFormulário;"

    Depois dos campos atualizados, pode apagar o código com o botão, ai sim pode inserir o Dlast do jeito que está no exemplo que postei no outro tópico
    avatar
    renatojmaia
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 16/11/2012

    [Resolvido]acrescentar numeraçao em campo via código vba Empty Dúvida

    Mensagem  renatojmaia 19/1/2014, 16:45

    Tenho algumas dúvida:
    - Qual o código do formulário?
    - Terei criar os campos primeiro na tabela? ou é o código que vai criar os campos?
    Desculpe minha ignorância em vba. mais me esforço para estudar tudo que tenho de dúvida.
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 19/1/2014, 17:08

    Código do formulário é a mesma chave primária da tabela origem desse formulário que deduzo estar nesse formulário. Faz uma cópia do teu banco antes de executar essa tarefa
    avatar
    renatojmaia
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 16/11/2012

    [Resolvido]acrescentar numeraçao em campo via código vba Empty Dúvidas em atualizar campo

    Mensagem  renatojmaia 21/1/2014, 12:11

    Bom Dia!

    Criei um formulário com três campos da tabela: IDENTIFICACAO(campo chave), NOME e UNIDADE.
    Coloquei um botão com as instrução no evento ao cliclar:

    Código:
    CurrentDb.Execute "Update RelacaoCompleta SET IDENTIFICACAO = IDENTIFICACAO + 1 WHERE IDENTIFICACAO = IDENTIFICACAO;"
    Não ocorreu a atualização da Numeração da tabela.

    Pergunto?
    Terá que ter dois campos como no seu exemplo "id" e "NúmeroRegistro".

    Pois no meu bd tenho apenas o campo IDENTIFICACAO e nenhum campo com numeração automática.
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 21/1/2014, 13:46

    Olha esse teu exemplo, acrescentei um campo chamado "acrescentaum" na tabela RelacaoCompleta que irá receber a nova numeração (Identificação + 1), no formulário frmServidorAtivo o botão comando, clica nele e observa a tabela que o campo em questão vai estar atualizado.
    avatar
    renatojmaia
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 16/11/2012

    [Resolvido]acrescentar numeraçao em campo via código vba Empty acrescentar numeraçao em campo via código vba

    Mensagem  renatojmaia 21/1/2014, 19:19

    Caro! betogivoni.
    Deu certo a atualização quando coloquei o código no banco de dados. Mais quando coloquei o código para o botão "novo registro" continuou pegando de um registro já cadastrado.
    Mais em compensação criei um novo BD com uma nova tabela com os mesmos form e o código para fazer o acréscimo + 1 automaticamente.
    e Deu tudo certo o código funciona perfeito.
    Conclusão:
    Não dá certo utilizar esse código quando a tabela já foram inserido ou excluído registro;
    Dá certo para uma nova tabela.
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 21/1/2014, 22:07

    Não entendi. Essa atualização é para preencher os campos em que os registros já existem, para inciar os novos registros tens que usar o Dlast no evento após atualizar de algum campo do formulário, lembrando que antes da linha do código ten que colocar o Me,Refresh para que o nro seja mostrado imediatamente a atualização do campo.
    avatar
    renatojmaia
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 16/11/2012

    [Resolvido]acrescentar numeraçao em campo via código vba Empty acrescentar numeraçao em campo via código vba

    Mensagem  renatojmaia 29/1/2014, 12:21

    betogivoni,

    O código sugerido por você, funcionou perfeitamente em novo banco de dados, no meu BD não funcionou perfeitamente.
    Quando utilizei num BD com uma nova tabela ele funcionou.
    pesquisei no Fórum e encontrei um post sobe o assunto:
    http://maximoaccess.forumeiros.com/t1396-resolvidoduvida-sobre-numeracao-automatica

    utilizei o código e atendeu as minhas necessidade:
    Código:
    Private Sub Form_Current()
     If Me.NewRecord Then
     On Error Resume Next 'Apenas por segurança...
     Me![Código do Cliente].DefaultValue = Nz(DMax("[Código do Cliente]", "Cliente"), 0) + 1
     End If
    End Sub

    Pelo que percebi a diferença está na Função "DLast" de sua rotina e na "DMax" do exemplo acima.


    Obrigado pela atenção!
    avatar
    Convidado
    Convidado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Convidado 29/1/2014, 18:32

    Então é porque a tabela não está com o campo código do cliente numa sequência, ou seja, existem buracos nesse campo. Uma observação, a função Dmax não pega obrigatoriamente o último, e sim o maior valor de uma cadeia (conjunto) de registros. O importante é que resolveu tua necessidade.

    Conteúdo patrocinado


    [Resolvido]acrescentar numeraçao em campo via código vba Empty Re: [Resolvido]acrescentar numeraçao em campo via código vba

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 7/5/2024, 00:04