MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Compartilhe

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  diegojacob em Qua 26 Mar 2014, 13:32

    Alá pessoal,

    eu possuo um formulário com campos que filtram um subformulário (contínuo), porém, eu gostaria que ao filtrar, ele inserisse um valor de um campo do formulário em todos os registros sob filtro no subformulário contúnuo.

    Eu tentei:

    Me.Subform_Registro.Form.Registro = Me.Registro_Select

    Porém, no filtro do formulário contínuo, retornam 01, 02 ou mais registros, e o código acima, só insere os dados do Registro_Select no primeiro registro do subformulário continuo e não nos demais.

    Haveria a possibilidade de ele inserir o valor no campo específico em todos os registros visualizados no filtro?

    Att.,
    Diego

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  diegojacob em Qua 26 Mar 2014, 14:29

    Encontrei ese código em uma pesquisa que fiz, mas não funcionou, apenas não insere dado algum.

    Private Sub Registro_Select_AfterUpdate()
    Me.Subform_Registro.Requery

    Dim rst As Object
    Dim Reg As String
    Set rst = Me.Recordset
    Reg = Nz(Me.Me.Subform_Registro.Form.Registro, 0)
    If Reg = 0 Then
    MsgBox Transmittal_Address '(Aqui retorna o valor 0)
    With rst
    If Not (.BOF And .EOF) Then
    .MoveFirst
    Do Until .EOF
    .Edit
    Me.Subform_Registro.Form.Registro = Me.Registro_Select
    .Update
    .MoveNext
    Loop
    End If
    End With
    End If

    End Sub

    Haveria alguma contribuição para fazer o código acima funcionar?

    Att.,
    Diego

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  diegojacob em Qua 26 Mar 2014, 17:51

    Boa tarde pessoal, mais outra tentativa sem sucesso, encontrei um outro exemplo aqui no Fórum, mas ocorre erro (Erro em tempo de execução '3426') em Reg.MoveNext, vejam abaixo a sintaxe:

    Private Sub Registro_Select_AfterUpdate()
    Me.Subform_Registro.Requery

    Dim Reg As Recordset

    Set Reg = Me.Subform_Registro.Form.Recordset

    If Nz(Me.Subform_Registro.Form.Registro, 0) = 0 Then
    Reg.MoveFirst
    Do
    Me.Subform_Registro.Form.Registro = Me.Registro_Select
    Reg.MoveNext ' (Aqui ocorre erro)
    Loop Until Reg.EOF
    Reg.MoveFirst
    End If
    End Sub

    Segu eo link do exemplo:

    [Você precisa estar registrado e conectado para ver este link.]

    Att.,
    Diego

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  HARYSOHN em Qui 27 Mar 2014, 18:57

    Se voce tem a id do registro no sub-form faça um Update na tabela

    CurrentDb.Execute "UPDATE Set SeuCampo = " & Me.Parent.SuaCaixaTextoNoFOrmulárioPai & " WHERE SuaIDNaTabela = " & Me.Parent.SuaCaixaTextoIDNoFormulárioPai & ""
    Me.SeuSubForm.Requery


    Cumprimentos.


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  diegojacob em Sex 28 Mar 2014, 13:14

    Bom dia Piloto,
    eu não entendi aonde eu insiro a função, mesmo assim, acho que ela não irá inseri mais de um registro num form continuo, ou irá?

    Fiz um exemplo do que eu preciso e envio anexo, poderia testar?
    No caso, está filtrado por cidade.

    Obrigado.
    Anexos
    Exemplo.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (32 Kb) Baixado 16 vez(es)


    Última edição por diegojacob em Ter 01 Abr 2014, 14:36, editado 1 vez(es)

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  diegojacob em Ter 01 Abr 2014, 12:11

    Bom dia a todos, continuando com o tópico, em alguns testes, eu notei que a forma com eu estava fazendo não está correta, pois não posso vincular a tabela onde irei inserir os dados com a tabela filtro, acho que a forma correta é ter 02 subformulários, um com filtro e outro onde eu preciso inserir os dados filtrados no 1º Subformulário.

    Exemplo:

    01 Formulário onde eu insiro os filtros, com combos, etc.
    01 Subformulário/01, onde eu aplico tais filtros, me retornando uma lista de registros
    01 Subformulário/02, onde eu copio as informações do Subformulário/01, mas serão 02 ou mais registros de um formulário contínuo.

    Alguém teria alguma ideia, de como eu poderia fazer isso?


    Obrigado.
    Diego

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  HARYSOHN em Ter 01 Abr 2014, 21:54

    Eu ainda não consegui entender o que deseja..
    A princípio eu pensei que:

    1 - Filtrar o sub formulário, suponha aqui que retornou 3 registros...
    2 - Lança um determinado Valor X em um campo para os 3 registros encontrados pelo filtro.

    é isso?


    Cumprimentos.


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  diegojacob em Qua 02 Abr 2014, 12:09

    Piloto,
    vou tentar explicar melhor...

    Eu possuo um formulário onde tenho os registros dos funcionários e um subformulário (continuo) onde incluo a lista de clientes de uma determinada Cidade, diante disso, eu preciso que ao selecionar o nome do funcionário e a cidade, ele buscasse em uma tabela (clientes), todos os cliente dessa determinada cidade, e os inserisse no subformulário automaticamente, podendo ser de 01 a 30 registros (clientes diferentes).

    No exemplo que enviei, eu estava relacionando uma tabela com outra dentro do subformulário, mas desse jeito eu vi que não dá certo.
    Esse processo funciona com uma consulta acréscimo, mas terei que tratar erros de duplicidade, porque se o usuário executar a consulta 02 vezes, terei o dobro de registros, pois usando a consulta, não tenho como vincular as ID's de campo Mestre e Filho, para que todos os registros fossem lincados, assim, evitaria duplicidade.

    Esse processo eu queria fazer por VBA, mas não estou conseguindo, por isso recorri aos especialistas do Fórum.

    Espero ter esclarecido melhor a situação.

    Obrigado.

    Att.,
    Diego

    rdrck
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 983
    Registrado : 11/03/2014

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  rdrck em Qua 02 Abr 2014, 13:15

    Olá Diego,
    Isso não seria possível apenas com uma tabela para o formulário (contendo os campos Funcionário e Cidade) e uma para o subform (contendo as Empresas e a Cidade)?
    Depois poderia vincular o subform ao form pelo campo Cidade.
    Não funciona assim?
    Porque a necessidade de VBA?


    .................................................................................
    Meu Programa / OS:
    Access 2007 - Windows 7.

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  diegojacob em Qua 02 Abr 2014, 13:57

    Sim essa é a minha opção mais simples se eu tivesse 01 ou 02 clientes, mas há cidades que possuo 10, 20 até 30 clientes, e para eu não ter que incluir cliente por cliente de uma determinada cidade no subformulário, eu quero incluir todos referente a cidade selecionada de uma só vez no subformulário. Já consegui por consulta acréscimo, mas a dúvida inicial era fazer por VBA.
    Pois além das 02 tabelas de controle do formulário e subformulário, eu tenho uma terceira tabela, a de "clientes", a qual eu quero inserir no subformulário de acordo com o filtro.

    Daí a necessidade do VBA, pois deixará a aplicação mais limpa e eficiente.

    Obrigado pela dica.

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  HARYSOHN em Qui 03 Abr 2014, 19:15

    Boas Diego.. A minha opinião:

    Carregar um recordset baseado na tblCLientes, filtrado pela cidade

    Depois que selecionar o funcionário e a cidade, carregaria este recordset...

    Um Loop pelo recordset adicionando o registro na tbl inerente ao sub form

    Do While Not Rs.EOF
    CurrentDb.Execute "INSERT INTO tblXXXXX (Campo1, Campo2, Campo3) Values (""" & ID para Relacionamento & """,""" & Rs!xxxxxx & """,""" & Rs!nnnnn & """)"
    Rs.MoveNext
    Loop


    É por ai.

    Cumprimentos.


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    rdrck
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 983
    Registrado : 11/03/2014

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  rdrck em Sex 23 Maio 2014, 17:00

    Olá Diego,
    O problema já foi sanado?
    Se sim, não esqueça de clicar no [Resolvido], para encerrar o tópico.
    Valeu.


    .................................................................................
    Meu Programa / OS:
    Access 2007 - Windows 7.

    diegojacob
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 06/07/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  diegojacob em Seg 26 Maio 2014, 19:07

    Me desculpe pela falta de respostas.
    Sim, o problema foi sanado, mas com consulta acréscimo.
    Deixei a consulta dependente dos filtros do formulário e inseri um botão para executar a consulta e atualizar o subformulário.

    Obrigado a todos.

    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido] Inserir dados em um único campo de um Formulário Continuo sob filtro (em mais de um registro)

    Mensagem  HARYSOHN em Ter 27 Maio 2014, 11:52

    O Fórum agradece o retorno.


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

      Data/hora atual: Qui 08 Dez 2016, 00:09