MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

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]Controle de Form a ser usado

    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 24/11/2018, 22:00

    Boa noite

    Tenho o seguinte comando

    Forms![FrmPDV1].Form.txttotalPago.SetFocus, que esta num fomr chamado "TESTE"

    Porem possuo 5 PDv's, gostaria de ter algo semelhante a isso:

    --- FORM TESTE ---
    Dim a
    a=Me.Txt_PDV 'este campo é apresentado o Numero de 1 a 5 dependendo se Form1, Form2....
    Forms![FrmPDV & a].Form.txttotalPago.SetFocus

    Se eu por igual acima da erro, como devo por a Variavel a ?

    Andre
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

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

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  FabioPaes em 25/11/2018, 01:10

    Olá, quer dizer que tem 5 formularios, sendo um pra cada PDV???
    E se tiver 20PDVs? Tera 20 forms?

    Acredito que deveria mesmo era repensar isso!!!

    A Duvida ficou mau formulada. Nao sei exatamente o que pretende.


    .................................................................................
    _____________________________________________________________________
    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!
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 25/11/2018, 01:19

    Assim

    Private Sub Dinheiro()


    Dim a
    a = Me.PDV

    DoCmd.OpenForm "FrmPDV" & a
    DoCmd.MoveSize 1700, 100, 20500, 12700 ' ( Esquerda,Topo,Largura,Altura)
    Forms![FrmPDV1].Form.Txt_ControlePendencia = 0
    Forms![FrmPDV1].Form.Txt_PrevPag.Visible = False
    Forms![FrmPDV1].Form.txt_parcelacartao.BackColor = &H80000005

    Veja que nesta linha eu usei algo semelhante
    DoCmd.OpenForm "FrmPDV" & a

    Quero fazer o mesmo para este comando
    Forms![FrmPDV1].Form.Txt_ControlePendencia = 0

    tipo isso

    Forms![FrmPDV] & a .Form.Txt_ControlePendencia = 0
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 25/11/2018, 01:21

    Me.PDV pode ser 1, 2, 3 , 4 ou 5

    Se 1 entao

    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 25/11/2018, 01:26

    Olá, quer dizer que tem 5 formularios, sendo um pra cada PDV???
    E se tiver 20PDVs? Tera 20 forms?

    Tenho apenas 5 Forms PDV

    e tenho 1 Form Apenas chamado "Frm_Desconto_Parceiro" este e unico a ambos os PDVs. Pois todos chamam esse unico Form. Por isso ao chamar ele,
    Ele ira jogar as informacoes que estao em Frm_Desconto_Parceiro no PDV relacionado

    Forms![FrmPDV] & a .Form.Txt_ControlePendencia = 0

    Assim funciona:
    Forms![FrmPDV] & a .Form.Txt_ControlePendencia = 0

    Mas preciso que fique parecido com isso:
    Forms![FrmPDV] & a .Form.Txt_ControlePendencia = 0

    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

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

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  FabioPaes em 25/11/2018, 12:29

    Na ultima mensagem os 3 comandos sao iguais. E disse que um funciona e outro nao.

    Narre  pra nos onde o usuario esta, onde clica, o que faz ao clocar e o que pretende qnd clicar no botao...


    .................................................................................
    _____________________________________________________________________
    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!
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 25/11/2018, 12:52

    Bom dia, resumindo, eu preciso apenas colocar em [FrmPDV} uma variavel "a".

    Com isso quem vai determinar o futuro endereço , se sera encaminhado a FrmPDV1, FrmPDV2 ate FrmPDV5 sera esta variavel "a".

    Estando ativo o Form "Teste" no botao de comando iria isso abaixo, FrmPDV1, FrmPDV2,FrmPDV3,FrmPDV4,FrmPDV5, sao formularios a parte. O Formulario Teste serve para ambos eles,  Dentro do Form TEste eu tenho um campo chamado RefPDV, neste vai estar o Numero do PDV que servira de partida para que o comando abaixo funcione.

    Eu poderia fazer assim:

    If Me.RefPDV=1 Then
    Forms![FrmPDV1.Form.Txt_ControlePendencia = 0
    End If

    If Me.RefPDV=2 Then
    Forms![FrmPDV2.Form.Txt_ControlePendencia = 0
    End If

    If Me.RefPDV=3 Then
    Forms![FrmPDV3.Form.Txt_ControlePendencia = 0
    End If

    If Me.RefPDV=4 Then
    Forms![FrmPDV4.Form.Txt_ControlePendencia = 0
    End If

    If Me.RefPDV=5 Then
    Forms![FrmPDV5.Form.Txt_ControlePendencia = 0
    End If

    Mas eu gostaria entao de criar uma variavel para o comando atuar com esta variavel

    exemplo

    Dim a
    a=RefPDV.value

    Sendo assim entao

    Forms![FrmPDVa].Form.Txt_ControlePendencia = 0 , mas assim da erro nao aceita entendeu ?

    Andre
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

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

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  FabioPaes em 25/11/2018, 20:41

    Amigo eu desxonheço a forma de fazer o que pretente...
    Pois dara erro na linha qnd tentar pegar o valor da variavel.

    Como vc falou, so tem 5 pdvs, entao faça com if ou com select Case.


    Mas aguarde para ver se alguem com mais experiência saiba da soluçao.


    .................................................................................
    _____________________________________________________________________
    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!
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 25/11/2018, 20:58

    Precisava mesmo que pudesse ser uma variavel, porque nenao ficara muito grande o codigo, imagina fazer varios ifs numa Private Sub grande.

    Vamos esperar quem sabe exista uma solucao de por a variavel

    Dim a
    a = Me.PDV

    DoCmd.OpenForm "FrmPDV" & Me.PDV -------------------------------------------------------->>>>> 'aqui eu resolvi pois a poderá assumir entre 1 a 5 isso vai depender de Me.PDV
    DoCmd.MoveSize 1700, 100, 20500, 12700 ' ( Esquerda,Topo,Largura,Altura)
    Forms![FrmPDV1].Form.Txt_ControlePendencia = 0 -------------------------------------------->>>>> Aqui preciso resolver e aproveitar a mesma variavel "a"

    ficando algo assim:
    Forms![FrmPDV1 & a].Form.Txt_ControlePendencia = 0 ----------------->> Sei que assim o comando nao funciona, entao espero uma solucao, se puderem ajudar.

    Andre








    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 26/11/2018, 00:24

    Tentei sso mas nao funciona tb da erro no comando

    Dim a, b, c, d As Variant
    a = Me.PDV & "]"
    b = "[FrmPDV" & a
    c = "Forms!"
    d = c & b

    d.Form.Txt_ControlePendencia = 0

    Erro em tempo de execucao 424
    O Objeto é obrigatorio.

    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 26/11/2018, 10:44

    Bom dia,

    O que nao entendo é que ao rodar a macro por parte, ao passar pela variavel:

    d = c & b

    e ao cair em cima do comando abaixo, quando ponho o mouse em cima da variavel acima, aparece que d = Forms.[PDV1}, por qual razao nao funciona ?

    d.Form.Txt_ControlePendencia = 0



    thiagomcosta
    thiagomcosta
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 368
    Registrado : 23/01/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  thiagomcosta em 26/11/2018, 10:56

    Tente algo assim:

    Código:
    Forms("FrmPDV" & a).Form.Txt_ControlePendencia = 0
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 382
    Registrado : 05/03/2017

    [Resolvido]Controle de Form a ser usado Empty Re: [Resolvido]Controle de Form a ser usado

    Mensagem  fazerbem em 26/11/2018, 11:04

    Bom dia ThiagomCosta, eu sabia que iria resolver aqui !!

    Pior que eu havia testado assim, mas sem sucesso, pois faltou pouco ne amigao, muito obrigado mesmo .

    Erro:
    Forms!("FrmPDV" & a).Form.Txt_ControlePendencia = 0

    Coreto:
    Forms("FrmPDV" & a).Form.Txt_ControlePendencia = 0

    Andre

      Data/hora atual: 17/1/2021, 18:12