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


2 participantes

    [Resolvido]Gravar vários registros alterando apenas 1 campo

    avatar
    vailson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 160
    Registrado : 08/05/2015

    [Resolvido]Gravar vários registros alterando apenas 1 campo Empty [Resolvido]Gravar vários registros alterando apenas 1 campo

    Mensagem  vailson 12/9/2017, 19:10

    Olá Pessoal,

    Surgiu uma necessidade atípica aqui.

    Código:

    Dim DB As Database, RS As DAO.Recordset
    Set DB = CurrentDb()
    Set RS = DB.OpenRecordset("opo")
    RS.AddNew
    RS("evento") = Me.txt_evento
    RS("local") = Me.txt_local
    RS("data") = Me.txt_data
    RS("hora") = Me.txt_hora
    RS("efetivo") = Me.txt_efetivo
    RS("uniforme") = Me.txt_uniforme
    RS("solicitante") = Me.txt_solicitante
    RS("outros") = Me.txt_observacoes
    RS("codopo") = Nz(DMax("codOPO", "opo")) + 1
    RS.Update
    RS.Close

    Esse código aí grava um registro na tabela. Muitas vezes o formulário é preenchido várias vezes com a mesma informação mudando apenas a data.
    Aí surgiu a ideia de colocar um campo no formulário indicando quantos dias deveria repetir.
    A necessidade é: somar o número inserido no campo indicativo de vezes a repetir com o campo data do formulário.
    Exemplo:
    Data: 10/01/2000
    Dias a adicionar: 3

    O sistema iria gravar 3 registros na tabela: 10/01/2000, 11/01/2000, 12/01/2000, mantendo todas as demais informações.
    A grosso modo, poderíamos dizer que ele executaria esse código acima 3x, mudando apenas a data.

    Como fazer isso?
    Obrigado!
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Gravar vários registros alterando apenas 1 campo Empty Re: [Resolvido]Gravar vários registros alterando apenas 1 campo

    Mensagem  FabioPaes 12/9/2017, 19:48

    Olá, procurando sempre achamos alguma coisa por aqui pelo site!

    Veja por exemplo esse aqui:
    https://www.maximoaccess.com/t26645-resolvidoadicionar-uma-quantia-de-dados-em-sequencia-a-partir-de-um-formulario

    Existem vários outros no mesmo sentido... SObre parcelamento!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    vailson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 160
    Registrado : 08/05/2015

    [Resolvido]Gravar vários registros alterando apenas 1 campo Empty Re: [Resolvido]Gravar vários registros alterando apenas 1 campo

    Mensagem  vailson 12/9/2017, 20:29

    Certo FabioPaes,
    e como adiciono um dia (na data) contando o primeiro dia por evento do loop?

    Código:
    Dim DB As Database, RS As DAO.Recordset
    Set DB = CurrentDb()
    Set RS = DB.OpenRecordset("OPO") 'Nome da Tabela
     
       For i = 1 To Me.txt_repete  'Calcula o Loop
           'Campos e valores a serem preenchidos
           RS.AddNew
           RS("evento") = Me.txt_evento
           RS("local") = Me.txt_local
           RS("data") = Me.txt_data + i
           RS("hora") = Me.txt_hora
           RS("efetivo") = Me.txt_efetivo
           RS("uniforme") = Me.txt_uniforme
           RS("solicitante") = Me.txt_solicitante
           RS("outros") = Me.txt_observacoes
           RS("codopo") = Nz(DMax("codOPO", "opo")) + 1
           RS.Update
       Next
       RS.Close

    Até aí em cima deu certo, mas na tabela só entra o segundo dia, tipo de seleciono o dia 12 e coloco 5 repetições, ele vai gravar 13,14,15,16,17. Deveria gravar 12,13,14,15,16.
    Thanks
    avatar
    vailson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 160
    Registrado : 08/05/2015

    [Resolvido]Gravar vários registros alterando apenas 1 campo Empty Re: [Resolvido]Gravar vários registros alterando apenas 1 campo

    Mensagem  vailson 12/9/2017, 20:41

    Coloquei um -1 aí

    RS("data") = Me.txt_data -1 + i


    Obrigado FabioPaes

    Conteúdo patrocinado


    [Resolvido]Gravar vários registros alterando apenas 1 campo Empty Re: [Resolvido]Gravar vários registros alterando apenas 1 campo

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 3/5/2024, 00:31