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

    Alterar registro em Subform

    avatar
    leinat
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 14/06/2017

    Alterar registro em Subform Empty Alterar registro em Subform

    Mensagem  leinat 21/7/2017, 19:51

    Olá amigos. Estou com um problema em fazer CRUD em um formulário Access via VBA.

    Possuo este Formulário que contém um subform em formato de listview. Ao clicar duas vezes em uma célula específica deste listview abre um filedialog onde seleciono um arquivo, na célula selecionada seria salvo o caminho do arquivo.

    Abaixo está o trecho do meu código, o problema está que o caminho é salvo em um novo registro e não naquele que eu dei duplo clique. Sei que o meu problema está no comando tb.AddNew porém não consigo imaginar como resolver.

    '## Salva o caminho do arquivo na tabela tbl_Certificado_Origem##

    Dim db As Database
    Dim tb As Recordset
    Set db = CurrentDb
    Set tb = db.OpenRecordset("nomeTabela")

    tb.AddNew      '<< >>>>>>>>>>

    tb!CaminhoArquivo = Application.CurrentProject.Path & "\teste\" & Dir(Trim(.SelectedItems.Item(1)))

    tb.Update
    tb.Close
    Me.Refresh
    Set db = Nothing

    ....
    avatar
    Phillip_Junior
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 179
    Registrado : 09/12/2016

    Alterar registro em Subform Empty Re: Alterar registro em Subform

    Mensagem  Phillip_Junior 21/7/2017, 23:59

    Ola

    Realmente o fato de usar .AddNew significa adicionar um novo registro. Se o objetivo é alterar vc terá q usar .edit

    O bom seria postar um exemplo para podermos lhe ajudar mais ok?

    abraços


    .................................................................................
    Phillip_Junior
    Analista de Sistemas
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

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

    Alterar registro em Subform Empty Re: Alterar registro em Subform

    Mensagem  FabioPaes 23/7/2017, 16:10

    Como o amigo respondeu a cima... O .addNew adiciona novo registro no Recordset.

    Mude de: tb.AddNew para tb.edit

    Outra coisa que tem que alterar é:

    Set tb = db.OpenRecordset("nomeTabela") <== Aqui vc abre todos os registros da tabela... Aqui terá que mudar para abrir apenas o registro pretendido e edita-lo.

    Faça algo parecido:

    Set tb = db.OpenRecordset("SELECT * FROM nomeTabela WHERE ID = " & Me.NmeListBox.Column(1) & "")

    Veja que ao invés de especifica o nome da tabela, eu coloquei la uma Seleção de dados específicos dessa tabela.
    Utilizei como Numeração Unica o Campo ID, que deve ser substituído por um numero Único da sua tabela, algo que nao se repita. E mandei comparar com o valor selecionado na ListBox.coluna1. Adapte que dará certo!


    .................................................................................
    _____________________________________________________________________
    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!

    Conteúdo patrocinado


    Alterar registro em Subform Empty Re: Alterar registro em Subform

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 23/11/2024, 15:13