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

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    avatar
    mendesof
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 118
    Registrado : 30/12/2010

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  mendesof 23/2/2011, 22:53

    Uma questão para os cérebros.....
    Já aqui coloquei código para inserir dados em duas ou mais tabelas através de um formulário.

    Questão: e se eu quiser inserir dados em duas ou mais tabelas através de um formulário com um subformulário. Será que os crâneos me sabem resolver esta dúvida?

    Muito agradecido
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  criquio 24/2/2011, 02:28

    Você está usando formulário vinculados ou desvinculados? Se for vinculado, o processo é automático. Caso seja desvinculado, provavelmente esteja a usar RecordSet. É só instanciar um RecordSet para cada form/subforn:

    Dim RS1 As RecordSet, RS2 As RecordSet...

    Depois, basta usar os procedimentos normais para cada um deles. Isso é para colocar tudo em um único botão e salvar tudo de uma vez. Caso a intenção seja ter um botão para cada um, basta repetir o código para cada botão.
    Outra saída seria por SQL. Se for esse é o caso, tambem basta repetir o código, só mudando as tabelas e campos.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    mendesof
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 118
    Registrado : 30/12/2010

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  mendesof 24/2/2011, 10:08

    criquio, muito obrigado pela sua resposta.

    Não sei se me consegui expressar bem, ou pelo menos na totalidade.
    O que eu pretendo é ter um formulario principal com uma ou duas combobox, que mediante a selecção na combobox me faça apresentar um ou outro subformulário(o formulário terá dois ou mais subformulários, aparecendo só um, mediante a selecção da combo) e todos os dados irão para as mesmas tabelas.
    Em vez de ter vários formulários para introdução de dados, pretendia concentrar tudo num só. Já fiz um para outros dados, mas esse não tem subformulários.
    Como novato em programação e como autodidacta, nem sei se estarei a pensar da melhor forma.

    Aceitam-se sugestões e mais uma vez muito obrigada pela resposta.
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  criquio 24/2/2011, 12:35

    Dê uma olhada nesse exemplo que postei a algum tempo no Repositório de Exemplos do forum, acho que é mais ou menos isso que você deseja:

    http://maximoaccess.forumeiros.com/t501-abrindo-um-form-dentro-de-outro


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    mendesof
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 118
    Registrado : 30/12/2010

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  mendesof 24/2/2011, 12:46

    criquio, muito obrigado

    Mas o ficheiro tem extensão *.accdb. Com que se abre estes ficheiros? O access não reconhece. Eu tenho access 2003


    Última edição por mendesof em 24/2/2011, 12:49, editado 1 vez(es)
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  criquio 24/2/2011, 12:48

    Essa é a nova extensão do Access nas versões 2007 e 2010. O seu é 2003 ou anterior ao 2003? Para que eu possa converter para uma versão anterior compatível com a sua.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    mendesof
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 118
    Registrado : 30/12/2010

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  mendesof 24/2/2011, 13:53

    criquio, muito obrigado

    Mas o ficheiro tem extensão *.accdb. Com que se abre estes ficheiros? O access não reconhece. Eu tenho access 2003
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  criquio 24/2/2011, 14:02

    Aqui está em formato 2003. Abra o exemplo e clique nos botões para ver o subformulário se atualizar com o novo formulário.
    Anexos
    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? AttachmentFormSubForm2003.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (17 Kb) Baixado 194 vez(es)


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    mendesof
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 118
    Registrado : 30/12/2010

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  mendesof 24/2/2011, 15:23

    criquio, muito obrigado pelo retorno.

    Este exemplo provavelmente servir-me-á para outras situações, mas neste caso o que eu pretendia mesmo era que aparecesse o sub formulário de acordo com a selecção no combobox do formulário principal.

    Imagine um formulário principal onde eu no combobox escolhia ou "materiais", ou "veiculos", que seriam atribuidos também a uma segunda combobox "Clientes", que poderia comprar mais do que um destes objectos - "Materiais ou Veiculos" e por isso no sub formulário teriam que ser atribuidos ao mesmo cliente.~
    Não sei se me fiz entender.

    De qualquer forma muito obrigado pela ajuda.
    avatar
    mendesof
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 118
    Registrado : 30/12/2010

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  mendesof 24/2/2011, 15:37

    Estou a tentar fazer da seguinte forma:

    On Error Resume Next
    Dim BCO As Database
    Dim TAB1 As Recordset
    Dim TAB2 As Recordset
    Set BCO = CurrentDb()
    Set TAB1 = BCO.OpenRecordset("TAB1")
    Set TAB2 = BCO.OpenRecordset("TAB2")

    If Me.COMBOBOX = "TXT1" And Me.COMBOBOX2 <> "3" Then
    TAB1.AddNew

    TAB1![CAMPO1] = Me.TEXT1
    TAB1![CAMPO2] = Me.TEXT2
    TAB1![CAMPO3] = Form![SUBFORM2].TEXT3
    TAB1![CAMPO4] = Form![SUBFORM2].TEXT4
    TAB1![CAMPO5] = Form![SUBFORM2].TEXT5
    TAB1![CAMPO6] = Form![SUBFORM2].TEXT6
    TAB1![CAMPO7] = Me.TEXT7
    TAB1![CAMPO8] = Me.TEXT8
    TAB1![CAMPO9] = Me.TEXT9
    End If

    If Me.COMBOBOX = "TXT" And Me.COMBOBOX2 <> "3" Then
    TAB2.AddNew

    TAB2![CAMPO1] = Me.TEXT1
    TAB2![CAMPO2] = Me.TEXT2
    TAB2![CAMPO3] = Form![SUBFORM1].TEXT3
    TAB2![CAMPO4] = Form![SUBFORM1].TEXT4
    TAB2![CAMPO5] = Form![SUBFORM1].TEXT5
    TAB2![CAMPO6] = Form![SUBFORM1].TEXT6
    TAB2![CAMPO7] = Me.TEXT7
    TAB2![CAMPO8] = Me.TEXT8
    TAB2![CAMPO9] = Me.TEXT9


    End If
    If MsgBox("Confirma a Inclusão dos Dados", vbYesNo, "Titulo") = vbYes Then

    TAB1.Update
    TAB2.Update

    Else

    TAB1.CancelUpdate
    TAB2.CancelUpdate

    End If

    TAB1.Close
    TAB2.Close


    Só que os dados dos subformulários não estão a ser inseridos
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  Assis 24/2/2011, 16:05

    vai aqui
    http://www.accessfaq.com.br/webroot/default.asp?http%3A//www.accessfaq.com.br/webroot/detalhe.asp%3FPergunta_Id%3D24


    .................................................................................
    *** Só sei que nada sei ***
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  criquio 24/2/2011, 17:39

    Uma maneira de ser fazer o que pretende pode ser você criar uma tabela para colocar os nomes dos formulários criados. Essa tabela conteria duas colunas, ou dois campos, sendo um para o nome do formulário e outro para o nome que será exibido. Por exemplo:

    --------------------------------------------------
    | NomeDoForm | NomeExibição | | |
    --------------------------------------------------
    | frmCadastro| Cadastro | | |
    --------------------------------------------------
    | frmEditar | Edição | | |
    --------------------------------------------------
    | frmConsulta| Consultas | | |
    --------------------------------------------------

    Construa a combo à partir da tabela, e no evento "Após atualizar" da combo, coloque:

    Me.subForm.SourceObject = Me.NomeDaCombo.Column(0)
    Me.subForm.SetFocus


    Ao construir um novo formulário, basta adicioná-lo à tabela.

    Não se esqueça de configurar as propriedades da combo para exibir a segunda coluna apenas.


    Última edição por criquio em 24/2/2011, 17:50, editado 1 vez(es)


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    mendesof
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 118
    Registrado : 30/12/2010

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  mendesof 24/2/2011, 17:45

    criquio,

    Resolvido, muito obrigado pelo retorno
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  criquio 24/2/2011, 17:51

    Obrigado! Precisando, assovie.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


    Conteúdo patrocinado


    [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário? Empty Re: [Resolvido]Como inserir dados numa ou mais tabelas através de formulário com subformulário?

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 27/4/2024, 06:30