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


    [Resolvido]Carregar SubFormulario Via Código VBA

    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 18/4/2013, 15:01

    Bom dia pessoal !

    Atualmente uso Subformulario que é preenchido com dados de uma consulta (Fiz usando o proprio assistente do access)e funciona perfeitamente.

    Mas agora me surgiu uma necessidade de alterar a minha consulta que tem como critério em vários pontos, comparação com a data de hoje e uso o Date().

    Mas agora preciso que criar um combox onde o usuário irá informar a data e na minha consulta onde tem Date() na verdade será a data que o usuário informar

    Minha consulta é bem complexa mas o único critério que sera informado pelo usuário é a data que ira substituir Date().

    Sei que irei utilizar algo parecido com..
    Select...Where Data_Da_tabela = '" & Cbox_data_informada_pelo_usuario & "'

    Mas minha dificuldade de inicio é como preencher o SubForm via código, uma que uma vez que pelo assistente ele já carrega logo no Load do Form.


    Saudações !
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 18/4/2013, 18:56

    Olá Rafael,

    Você poderia mudar a origem do registro (RecordSource) via vba.


    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 18/4/2013, 19:21

    Obrigado Pela resposta Nivaldo!

    Você tem algum exemplo?
    Sinceramente trabalho muito pouco com Subformulario(Tenho somente 2 em minha aplicação)


    Agradeço a atenção
    Saudações !
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 19/4/2013, 12:03

    Boa dia Rafael,

    Tenta algo assim:


    Código:
        Dim sql1, Sql2 As String
       
        sql1 = "SELECT * FROM TuaConsulta1"
        Sql2 = "SELECT * FROM TuaConsulta2"
       
        Me.Data_Da_tabela = Me.ComboData.Column(0)
        If ????????????????? Then
            Me.Form.RecordSource = Sql1
        Else
            Me.Form.RecordSource = sql2
        End If
           
        Me.Form.Requery

    Tenta no evento Ao Carregar.


    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 19/4/2013, 14:24

    Nivaldo Bom dia!

    A ideia é excelente, mas no meu caso o Tenho um formulário e dentro desse formulario tem o Subformualrio que é carregado ao abrir do Formulario e quando o usuario abrir a primeira vez a data da combo sempre será a Date(), somente depois desse formulario aberto é que o usuario poderar informar a data.




    Saudacoes !


    Última edição por Rafael_Jr em 20/4/2013, 16:53, editado 1 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 20/4/2013, 02:13

    Olá Rafael,

    Se Date() é um critério do campo na tua consulta, não seria mais facil informar o critério através do teu formulário??

    Critério: Forms!NomeFormulário!ComboData

    E no evento Após Atualizar da ComboData:

    Me.TeuSubFormulário.Requery


    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 20/4/2013, 16:57

    Nivaldo,

    Eu pensei nisso, mas o quando uso o assistente do Access para preencher o Subformulario ele é carregado ao iniciar do Formulário.


    E no meu caso a primeira vez que o usuário abrir o formulário o critério será realmente o Date() e somente depois de aberto caso ele decida vez como estava o indicador em dias anteriores ai sim ira informar a data que desejar e clicar em um botão e então o critério passara de Date() para a data que o Usuário informou.


    Pensei em algo assim mas se tiver alguma ideia com certeza serei grato !

    Saudações !
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 22/4/2013, 11:57

    Bom dia Rafael,

    Sei que existe forma mais profissional de fazer o que você quer, más dá uma analisada no exemplo e tenta adaptar para tua necessidade.

    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 23/4/2013, 18:09

    Muito Obrigado Nivaldo,

    Vou tentar adaptar a minha necessidade e posto o retorno!

    Obrigado!


    Saudações
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 25/4/2013, 18:30

    Nilvaldo

    Desculpe minha ignorancia
    mas onde estou errando ?

    Tenho isso
    CDate(IIf(Nz([Dt_Inicio])Date() And Month([Dt_Inicio])=Month(Date()) And Year([Dt_Inicio])=Year(Date()),Date(),IIf(Month([EPP_Dt_Inicio])<>Month(Date()),Date()-1,IIf(Year([EPP_Dt_Inicio])<>Year(Date()),Date()-1,[EPP_Dt_Inicio]))))) AS DataInicio_D_1,

    e pretendo fazer isso

    CDate(IIf(Nz([Dt_Inicio])<[forms]![Frm_Controle]![TxtOntem],[forms]![Frm_Controle]![TxtOntem],IIf(Nz([Dt_Inicio])>[forms]![Frm_Controle]![TxtHoje] And Month([Dt_Inicio])=Month(Date()) And Year([Dt_Inicio])=Year(Date()),[forms]![Frm_Controle]![TxtHoje],IIf(Month([Dt_Inicio])<>Month(Date()),[forms]![Frm_Controle]![TxtOntem][/color,IIf(Year([EPP_Dt_Inicio])<>Year(Date()),[forms]![Frm_Controle]![TxtOntem],[EPP_Dt_Inicio]))))) AS DataInicio_D_1,


    Saudacoes !


    Última edição por Rafael_Jr em 13/6/2013, 16:19, editado 1 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 26/4/2013, 12:17

    Olá Rafael,

    Esse é o critério que você esta usando???


    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 26/4/2013, 21:03

    Sim Nivaldo,

    Pelo menos pensei em algo parecido com isso que postei mas caso tenha uma sugestao agradeço !


    Quanto ao erro encontrei...
    Ao inves de
    [forms]![Frm_Controle]![TxtOntem]
    è
    [forms]![Frm_Controle].[TxtOntem]

    A query é bem complexa e enorme, e as condicoes que irei substituir seria basicamente Date()-1 e Date() , por isso criei 2 Caixa de texto que ao iniciar o form terão seus valores reais (Ontem e Hoje) e de acordo com data que usuário selecionar no CBox esse valores alterar ou seja ,
    Caso o usuario selecione por exemplo 10/01/2013

    Entao TxtHoje seria 10/01/2013 e TxtOntem sera txtHoje - 1

    Ainda nao terminei mas ate agora esta dando certo , mas como falei se tive uma sugestao melhor fico muito grato.

    Assim que eu conseguir concluir a Query posto o codigo completo caso queira analisar!

    Saudacoes !
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 27/4/2013, 02:04

    Olá Rafael,

    Como não tenho conhecimento/dominio em Sql, normalmente uso/modifico as consultas na própria grade Qbe.

    Más com certeza aquí tem muita gente que domina isso facilmente e certamente você irá encontrar auxílio.

    No que eu puder ajudar, estou à disposição.


    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 29/4/2013, 20:11

    Nilvado seu exemplo me ajudou muito!


    Com SQL nao tive problemas , conseguir fazer da forma como mencionei antes , no lugar date() coloquei TxtHoje e no lugar de Date()-1 coloquei Ontem e criei dois Txt,s com esse nomes.

    No access a consulta funciona blz quando executo informo os valores desses 2 campos e funfa legal.

    O problema esta sendo no VBA, no iniciar no Form coloque
    TxtHoje = Date
    TxtOntem = Date - 1
    (Verifiquei e as Txt,s estão recebendo os valores como esperado)

    Mas Mas na hora de preencher o SubForm não encontra esse valores (Ja tentei tambem no iniciar do SubFOrm).

    Fiz baseado no seu exemplo.
    Obs. A consulta se executo ele no próprio access informando os valores de TxtHoje e TxtOntem funciona


    Alguma Sugestão ?

    Saudações!
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 30/4/2013, 02:35

    Boa noite Rafael,

    Tenta no evento Ao Carregar do formulário.


    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 2/5/2013, 18:19

    Ola Nivaldo,

    Ja tentei tanto no evento Ao carregar do Form quanto no Subformulário e nada.

    Vou postar o BD com as tabelas e consultas envolvidas.

    Saudações !
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 4/5/2013, 03:53

    Ok Rafael,

    Fico no aguardo.


    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 4/5/2013, 19:59

    Obrigado Pela Atenção Nivaldo!


    Segue o Link do BD.
    https://dl.dropboxusercontent.com/u/19875180/Help_SubForm.rar


    Salve na Raiz C:\


    Saudações!
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 7/5/2013, 11:30

    Bom dia Rafael.

    Você não estava brincando quando disse que sua consulta era complexa.

    Tentei de várias formas más infelizmente não consegui.

    Más como lhe falei no início do tópico, tem muita gente aqui que poderá lhe ajudar.

    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 7/5/2013, 16:35

    Meu grande Amigo Nivaldo !

    Viu como é bem complexa (risos) ?
    Mas se você percebeu a consulta por si só funciona o problema é no formulário !

    De qualquer forma vou seguir tentando e muitíssimo obrigado pela sua atenção !


    Saudações !
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 13/6/2013, 20:44

    Bom, O erro nao esta na consulta, pois fiz o teste executando somente a consulta e deu certo e 

    tambem fiz um teste no formulario no click do botao chamando  a consulta  DoCmd.OpenQuery ("Minha_consulta")e tabem deu certo.

    Preciso carregar o Form e somente depois do Click do botao carregar o SubForm...Alguma Sugestao ?



    saudacoes !
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 13/6/2013, 21:11

    Fiz o Teste com uma ListBox e tambem funfou beleza

    strSelect = "Minha_Consulta  campos ...."

    Me!LisBoxTest.RowSource = "Minha_COnsulta"
    Me!LisBoxTest.ColumnCount = 10
    Me!LisBoxTest.Requery

    O que poderia estar errado ao carregar o subform ??

    Saudacoes !
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 14/6/2013, 02:36

    Boa noite Rafael,

    Não seria o vínculo do formulário com o subformulário????


    Nivaldo.
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 14/6/2013, 10:18

    Bom dia Nivaldo! 

    E como resolvo isso ?

    Obrigado
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  JPaulo 14/6/2013, 11:19

    Bom dia a todos;

    A ligação por VBA é assim;

    Me.[SeuSubForm].LinkChildFields = "SeuCampo"
    Me.[SeuSubForm].LinkMasterFields = "SeuCampo"


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Carregar SubFormulario Via Código VBA Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Carregar SubFormulario Via Código VBA Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Carregar SubFormulario Via Código VBA Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 14/6/2013, 14:29

    Bom dia !

    JPaulo ,
    Onde esta "SeuCampo" nao seria a consulta ? Me.[SeuSubForm].LinkChildFields = "MinhaConsulta" ?


    E qual a diferenca entre Me.[SeuSubForm].LinkChildFields = "SeuCampo"   e   Me.[SeuSubForm].LinkMasterFields = "SeuCampo".





    No caso em adicionaria o SubFormNormalmente pelo assistente informando a consulta e etc ?




    Obrigado pela atencao !
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  JPaulo 14/6/2013, 14:43

    Ola Rafael;

    Grande confusão heimmm....Very Happy

    Você quando insere um subform no form, tem de o ligar pelo Pai e filho, isso pode ser visto nas propriedades do subform, guia Dados.

    Essa ligação é feita por um campo comum entre os dois formularios, para que os dados do subform sejam coerentes com os do formulario.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Carregar SubFormulario Via Código VBA Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Carregar SubFormulario Via Código VBA Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Carregar SubFormulario Via Código VBA Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 14/6/2013, 17:32

    JPaulo,

    Resolvi
    Mas não conseguir fazer via VBA ...fiz de uma outra forma (Nao sei se é a mais correta)

    Nivaldo,
    Muitíssimo obrigado pela atenção desde o inicio do Tópico.


    Caso Alguém tenha o mesmo problema eu resolvi da seguinte forma

    * Ao iniciar do form não encontrava o paramento da combo box então no valor padrão da Combo coloquei Data() e funfou beleza.

    Saudacoes!
    avatar
    Convidado
    Convidado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Convidado 14/6/2013, 23:56

    Olá Rafael,

    Que bom que resolveu.

    Estamos todos aprendendo ao mesmo tempo.


    Nivaldo.

    Conteúdo patrocinado


    [Resolvido]Carregar SubFormulario Via Código VBA Empty Re: [Resolvido]Carregar SubFormulario Via Código VBA

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 10:22