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


3 participantes

    Copiar campo variavel para um campo na tabela

    avatar
    genio10
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 02/01/2014

    Copiar campo variavel para um campo na tabela  Empty Copiar campo variavel para um campo na tabela

    Mensagem  genio10 28/11/2015, 16:43

    Amigos procurei muita coisa no Forun e empreguei algumas ,tentei adaptar outras ,mas não consegui resolver meu dilema , que me parece simples ,porem fora da minha capacidade de resolver , vamos aos fatos .

    Tenho um sub formulário (ATENDIMENTO subformulário) abastecido por uma tabela (ATENDIMENTO) esse formulário registra os atendimentos que faço em minha loja ,criei um campo não acoplado para numerar e ordenar nesse formulário esses atendimentos e nomeei (B) e ele é abastecido por uma função publica (fncNumerar) , e tenho outro campo esse sim acoplado a tabela (ATENDIMENTO) com o nome de (A) no sub e na tabela .O que preciso fazer é copiar tudo que esta nesse campo nao acoplado (B) para o campo acoplado (A) e assim abastecer minha tabela , de preferencia tudo de uma vez ou a medida que vão acontecendo
    .
    O que ja tentei : Me.A=Me.B ou Me.B=Me.A
    ou CurrentDb.Execute "UPDATE ATENDIMENTO Set A= '" & Texto29 & "';" (esse quase funcionou porem atualizou todos com o numero do primeiro registro)

    Desculpa se ficou muito extenso.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  Noobezinho 28/11/2015, 20:07

    Jose

    Utilizar consulta atualização é o caminho certo.

    O que está precisando na tua consulta é um critério para atualizar
    somente o registro em questão.
    Veja qual campo identifica o registro como único, para que
    a consulta atualize somente o campo desse registro.

    Exemplo:

    CurrentDb.Execute "UPDATE ATENDIMENTO Set A= '" & Texto29 & "'  Where X = " & me.x &";"

    Dica: Construa a consulta Atualização, e teste se funciona.
           Se sim, então copia a expressão SQL dela para o vba.

    [ ]'s


    .................................................................................
    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.
    avatar
    genio10
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 02/01/2014

    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  genio10 30/11/2015, 14:53

    Caro Noobezinho desde ja agradeço sua atenção e vontade de ajudar.
    Segui suas dicas e acho que não deu o resultado esperado ,pois continua a atualizar todos os registros pelo 1º lançamento , quando a intenção era que fosse atualizado linha por linha , talvez não tenha me feito entender .
    Tenho o campo "Texto24" ligado a tabela ATENDIMENTO e armazenado no campo "C" desta tabela que é o campo que quero que apareça o que esta no campo "Texto29"  (rotulo B), que não é acoplado e e abastecido conforme vão sendo lançados novos atendimentos pela função:

    Public Function fncNumerar(frm As Form) As Long
    On Error GoTo TrataErro
    With frm.RecordsetClone
      .Bookmark = frm.Bookmark
      fncNumerar = 1 + .AbsolutePosition
    End With
    Exit Function
    TrataErro:
      If Err = 3021 Then fncNumerar = 0
    End Function

    então no sub formulario fica mais ou menos assim com sua sugestão ,logico de acordo com meu entendimento
    data----------atendente------------A------------B-----
    11/11/2015--   ana      ----------- 1 -----------1----
    10/11/2015--   ana      ----------- 1 -----------2----
    09/11/2015--   ana      ----------- 1 -----------3----

    quando o que preciso e dessa forma
    data----------atendente------------A------------B-----
    11/11/2015--   ana      ----------- 1  ----------1----
    10/11/2015--   ana      ----------- 2  ----------2----
    09/11/2015--   ana      ----------- 3  ----------3----


    Tentei assim:
    CurrentDb.Execute "Update ATENDIMENTO SET A=" & Me.Texto29 & " WHERE ATENDIMENTO.CPF2='" & Me.CPF2 & "';"

    Outra ideia seria vizualizar o campo "Texto29" direto numa consulta , seria possivel ?
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  Noobezinho 30/11/2015, 15:38

    Vamos por partes Razz

    Primeiro me diga o que pretende com esse código:

    Public Function fncNumerar(frm As Form) As Long
    On Error GoTo TrataErro
    With frm.RecordsetClone
    .Bookmark = frm.Bookmark
    fncNumerar = 1 + .AbsolutePosition
    End With
    Exit Function
    TrataErro:
    If Err = 3021 Then fncNumerar = 0
    End Function


    Pelo nome da função esta  tentando incrementar um número.

    Segundo a tua primeira mensagem :

    CurrentDb.Execute "UPDATE ATENDIMENTO Set A= '" & Texto29 & "'

    Texto29 é texto e não numérico, se sim, faltou as aspas simples como está no meu exemplo.


    Aguardo...


    .................................................................................
    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.
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  Cláudio Más 30/11/2015, 17:56

    Nesse caso é mais simples atualizar via recordset e contador, mais ou menos assim:

    Código:
    dim i as integer
    dim rs as recordset

    set rs=currentdb.openrecordset("Select A From ATENDIMENTO WHERE CPF2='" & Me.CPF2 & "';")
    i=1

    do while not rs.eof
       rs.edit    
       rs!A = i
       rs.update
       i = i + 1
       rs.movenext
    loop

    rs.close
    avatar
    genio10
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 02/01/2014

    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  genio10 30/11/2015, 19:28

    Noobezinho essa função e somente para numerar as linhas , conforme vão sendo feito os atendimentos, assim atendimento do dia 30 - fica 1 / do dia 29 -2 e assim por diante, ela vai se auto numerando, o que preciso realmente era colocar esse campo (texto29) que e abastecido por essa função, em uma consulta , que ja tenho e abastece um outro formulário , o meio que achei era imaginar que se conseguisse copiar esse campo em outro acoplado a tabela , as coisas ficariam mais facil.

    data-------------------C-----auto numeração
    30/11------------------1--------1
    29/11------------------2--------2
    28/11------------------3--------3
    27/11------------------4--------4



    Na primeira mensagem na realidade estava a tentar achar a solução, e coloquei (Texto29) que é uma caixa de texto não acoplada , numerica. mas com o campo (Texto24) que seria o correto tb o resultado é o mesmo, e tambem e caixa de texto numerica

    Claudio obrigado pela ajuda , o codigo que voce me passou , atualiza porem os numeros não ficaram na sequencia como explico acima , 5 ficou no 1 , o 3 no 5 e assim por diante , acho que preciso de ajuste , talvez pela explicaçao acima consiga entender melhor.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  Noobezinho 30/11/2015, 19:42

    Eugênio

    (Algo me diz que prefere o segundo nome Razz )

    Se essa função retorna o valor da texto29

    então experimente colocar a função na linha atualizar para da consulta.

    Faça isso numa consulta mesmo, para testar.

    Se funfar, é só mudar para o SQL e copiar e colar no VBA.







    .................................................................................
    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.
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  Cláudio Más 1/12/2015, 03:07

    Talvez funcione com a seguinte alteração:

    set rs=currentdb.openrecordset("Select A From ATENDIMENTO WHERE CPF2='" & Me.CPF2 & "' Order By Data Desc")
    avatar
    genio10
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 02/01/2014

    Copiar campo variavel para um campo na tabela  Empty Campo variavel na tabela ou consulta

    Mensagem  genio10 11/6/2016, 15:32

    Amigos apos algum tempo vou tentar reabrir esse post,ja que na ideia original resolvi de outra forma, mudando o projeto , mas vou precisar de algo parecido agora e queria ver se consigo com a ajuda dos craques de plantão ter uma luz .

    A questão e que tenho um formulario que tem um campo(Classificar) que numera automaticamente os lançamentos atraves de uma funçao publica filtrados pela data e um campo (Ordem ) que supostamente gostaria que recebesse esse valor , supostamente porque não seria essa minha principal intençao.
    Queria : 1- que esse campo que numera automaticamente fosse incluido diretamente na tabela no campo Ordem (em branco)reservado para ele ,mas queria que fosse feito pelo criterio de CPF,ou seja todos lançamentos do cpf carregassem sua numeraçao para essa tabela

    ou conseguisse fazer esse campo (classificar) ser incluido numa consulta , tambem com sua posiçao original.

    Segue banco de dados para tentar ilustrar.
    Anexos
    Copiar campo variavel para um campo na tabela  AttachmentAtualiza.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (42 Kb) Baixado 6 vez(es)
    avatar
    genio10
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 02/01/2014

    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  genio10 24/6/2016, 16:54

    Up

    Conteúdo patrocinado


    Copiar campo variavel para um campo na tabela  Empty Re: Copiar campo variavel para um campo na tabela

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/4/2024, 16:34