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

    Copiar dados do último registo do form

    avatar
    Luís Antunes
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 391
    Registrado : 05/04/2016

    Copiar dados do último registo  do  form Empty Copiar dados do último registo do form

    Mensagem  Luís Antunes 9/3/2021, 21:50

    Este código vai à tabela buscar os dados do último registo.
     é Possível o código ir buscar o último registo do formulário  como a tecla de atalho (alt+?)

       Me.Descricao = (DLast("Descricao", "Tbl_Lancamento"))
       Me.Documento = (DLast("Documento", "Tbl_Lancamento"))
       Me.Rubrica = (DLast("Cabimento", "Tbl_Lancamento"))
       Me.cbo_mesFm = (DLast("cbo_mesFM", "Tbl_Lancamento"))
       Me.Tipo = (DLast("Tipo", "Tbl_Lancamento"))

    Luís Antunes
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 11/3/2021, 11:13

    Luis

    Tem várias maneiras de conseguir o último registro de um formulário,

    ou melhor, fazer ele exibir somente o último registro.

    Vou mostrar uma forma simples:

    Abra um formulário em modo design e na propriedade Fonte de registro,

    crie uma consulta seleção que é uma consulta normal retornando todos os registros

    No campo código (idCliente) coloque a classificação: Decrescente

    Na ribbon na aba configuração da consulta em Retornar coloque 1

    Quando digitar 1, vai aparecer 100, apague os 2 zeros ( no meu Access é assim)

    Pronto, agora só vai aparecer o último registro no formulário.

    Espero que ajude  Wink

    { }'s

    Balem

    Clique para abrir:

    Copiar dados do último registo  do  form Consul10


    .................................................................................
    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
    Luís Antunes
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 391
    Registrado : 05/04/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Luís Antunes 11/3/2021, 20:23

    Boa noite Nobresinho-

    Se calhar expliquei-me mal ou não entendi a sua resposta. O que pretendo é copiar 5 campos da ultima ficha para a nova ficha.

    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1446
    Registrado : 13/12/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Alexandre Fim 11/3/2021, 20:51

    Só passando aqui e deixar minha sugestão.

    Voce pode utilizar essa rotina:

    Código:


    Sub CapturaUltimoRegistro()
    Dim sSQL As String
    Dim rst As DAO.Recordset


        sSQL = "SELECT Descricao,Documento,Cabimento,cbo_mesFM,Tipo "
        sSQL = sSQL & " FROM Tbl_Lancamento "
        sSQL = sSQL & " WHERE <SeuCampoID> = (SELECT MAX(<SeuCampoID>) FROM Tbl_Lancamento)"
        Set rst = CurrentDb.OpenRecordset(sSQL)
        
        If Not rst.EOF Then
            Campo_Descricao = rst("Descricao")
            Campo_Documento = rst("Documento")
            Campo_Cabimento = rst("Cabimento")
            Campo_cbo_mesFM = rst("cbo_mesFM")
            Campo_Tipo = rst("Tipo")
        Else
            Campo_Descricao = Empty
            Campo_Documento = Empty
            Campo_Cabimento = Empty
            Campo_cbo_mesFM = Empty
            Campo_Tipo = Empty
        End If
        
        rst.Close
        Set rst = Nothing


    End Sub





    Acredito que sua tabela tenha um campo ID (chave primária) ou do tipo Numeração Automática
    Nas instrução acima, substitua  o "SeuCampoID" pelo campo ID da tabela.



    Espero ter ajudado


    .................................................................................
    - Procure sempre anexar seu projeto para análise do problema/dúvida.
    - Ao copiar/colar um código VBA, procure entender seu funcionamento.
    - Se o problema foi resolvido, não se esqueça de marcar o tópico como RESOLVIDO.
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 11/3/2021, 20:57


    Luis

    (Tô mais pra Pobrezinho) Razz

    Bem, estou crendo que está duplicado os dados entre tabelas,

    e isso é desnecessário no Access.

    Explique o que pretende para podermos ajudar melhor.

    Aguardamos...






    .................................................................................
    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.
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1446
    Registrado : 13/12/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Alexandre Fim 11/3/2021, 21:11

    Noobezinho?

    Acredito que ele queira copiar alguns dados "default" para o próximo registro.


    .................................................................................
    - Procure sempre anexar seu projeto para análise do problema/dúvida.
    - Ao copiar/colar um código VBA, procure entender seu funcionamento.
    - Se o problema foi resolvido, não se esqueça de marcar o tópico como RESOLVIDO.
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 11/3/2021, 22:09

    Alexandre

    Se for isso, ou seja, uma repetição de dados de alguns controles  em um formulário, tem uma maneira
    mais fácil.

    No primeiro registro digita-se todos os campos.
    Nos demais registros dos campos desejados se repetem.
    Fazia isso quando cadastrava cheques pré-datados,
    onde o nome, numero, agencia do banco e valor se
    repetiam.
    A data de vencimento dos cheques quase se repetiam, pois
    somava-se + 1 mês, a cada registro.


    .................................................................................
    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.
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 22/3/2021, 22:35

    Luis Antunes


    Como ficamos?



    .................................................................................
    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
    Luís Antunes
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 391
    Registrado : 05/04/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Luís Antunes 23/3/2021, 21:59

    Boa noite Nobrezinho
    Já não contava que este tópico tivesse resposta.
    Já não vejo a minha primeira mensagem deste tópico para rever o assunto.
    Vou pôr o código que uso para copiar dados da última ficha.
    Código:
     DoCmd.GoToRecord , , acNewRec
        Me.Descricao = (DLast("Descricao", "Tbl_Lancamento"))
        Me.Documento = (DLast("Documento", "Tbl_Lancamento"))
        Me.Rubrica = (DLast("Cabimento", "Tbl_Lancamento"))
        Me.cbo_mesFm = (DLast("cbo_mesFM", "Tbl_Lancamento"))
        Me.Tipo = (DLast("Tipo", "Tbl_Lancamento"))
    Quando acciono este código vai-me buscar dados de há dois anos.
    Quando Compacto e reparo o BE o código vai-me buscar dados de há dois meses.
    Por isso, o tópico que abri, era saber se há alguma hipótese de copiar dados da última ficha, tal como a associação de teclas " Ctrl+? "

    Luís Antunes
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 23/3/2021, 22:10

    É essa mesma a tua dúvida no primeiro post desse tópico.

    Me parece que você nem chegou a verificar a solução que postei.

    O que mostrei, é fazer uma consulta da tabela e exibir somente o ultimo registro dela,

    já que o formulário é o reflexo dela.

    Você pode atribuir um atalho qualquer, para abri um formulário que tenha essa consulta

    como fonte de registro, seria o mesmo que criar um botão para fazer isso, a diferença é

    que será em código VBA.

    Balem


    .................................................................................
    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
    Luís Antunes
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 391
    Registrado : 05/04/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Luís Antunes 23/3/2021, 23:34

    Boas
    Já criei a consulta com o último dado da tabela
    Só consigo copiar um campo "descrição"
    Me.Descricao = (DLast("Descricao", "Cs_UltimoRegisto"))
    Pode me ajudar com o VBA?

    Luís Antunes
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 24/3/2021, 00:09

    Bem

    Até agora você não falou o que irá fazer com o resultado, e por isso

    dei exemplo de exibir num formulário.

    Explique o que fará com o resultado, que então tentarei ajudar Wink


    .................................................................................
    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
    Luís Antunes
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 391
    Registrado : 05/04/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Luís Antunes 24/3/2021, 00:25

    O que pretendo é ao acionar o botão e copiar os dados para a nova ficha, tal e qual com fazia com o código que postei na mensagem anterior

    Luís Antunes
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 24/3/2021, 01:39

    Deixe eu entender.

    Quer copiar alguns campos do ultimo registro para um novo?



    .................................................................................
    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
    Luís Antunes
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 391
    Registrado : 05/04/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Luís Antunes 24/3/2021, 08:35

    Correcto
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 24/3/2021, 10:16

    Meu amigo

    Se soubesse disso antes...
    Vou entender que é no mesmo formulário.
    Se sim, esqueça tudo, tenho uma maneira mais fácil de se fazer isso
    Por segurança faça uma copia ou crie outro formulário.
    Vou te dar um exemplo de cadastro de cheques, aqui no Brasil, costuma-se usar
    cheque preenchidos para pagar parcelas.
    Então o exemplo vou dizer que tem 5 cheques , 1 para cada mês.
    O primeiro cheque vai preencher normalmente.
    O dados que vão se repetir nos novos registros são:

    Banco,Agência, cliente e valor.

    Simplesmente fará isso.

    Na propriedade Após Atualizar de cada caixa de texto, coloque o seguinte

    Na caixa de texto Banco: Me!Banco.DefaultValue = Me!Banco
    Agência                          : Me!Agência.DefaultValue = Me!Agência
    Valor                              : Me!Valor.DefaultValue = Me!Valor

    Os dados repetidos do registro anterior somente serão exibidos quando se estiver adicionando novos registros.

    Creio que me fiz entender.  Wink

    Balem


    .................................................................................
    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
    Luís Antunes
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 391
    Registrado : 05/04/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Luís Antunes 24/3/2021, 19:25

    Boa Noite Nobrezinho
    Não é ainda bem isso que pretendo, vou anexar a BD par uma melhor compreensão.

    Luís Antunes
    Anexos
    Copiar dados do último registo  do  form AttachmentContabilidade.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (93 Kb) Baixado 4 vez(es)
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Noobezinho 24/3/2021, 21:24

    Luis

    O exemplo que eu enviei é para usar  o valor padrão de cada caixa de texto que precisa repetir o valor.

    Quase não utilizou ele, e tentou atribuir valores a outras caixas de texto.

    Lembre-se, o valor padrão só funciona quando está adicionando registros.

    Não use o docmd.runcommand.saverecord.

    O Access salva automaticamente quando mudar de registro.

    Creio que agora está ok.

    Balem
    Anexos
    Copiar dados do último registo  do  form AttachmentContabilidadeNB.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (61 Kb) Baixado 6 vez(es)


    .................................................................................
    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
    Luís Antunes
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 391
    Registrado : 05/04/2016

    Copiar dados do último registo  do  form Empty Re: Copiar dados do último registo do form

    Mensagem  Luís Antunes 24/3/2021, 22:01

    Boa noite Nobresinho

    Ainda não é desta. O que eu preciso é copiar dados da ficha anterior para a nova ficha.
    Envio novamente a BD com o código da cópia através da tabela.
    A código funciona nesta parte do projecto mas, no projecto não funciona, não sei porquê.
    Só queria que a origem dos registo fosse através da consulta.

    Luís Antunes
    Anexos
    Copiar dados do último registo  do  form AttachmentContabilidade.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (145 Kb) Baixado 3 vez(es)

      Data/hora atual: 12/6/2021, 23:36