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]Dúvida na referência de coluna de listbox em uma consulta

    leoni_dias
    leoni_dias
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 180
    Registrado : 14/08/2011

    [Resolvido]Dúvida na referência de coluna de listbox em uma consulta Empty [Resolvido]Dúvida na referência de coluna de listbox em uma consulta

    Mensagem  leoni_dias em 30/9/2019, 13:32

    Bom dia a todos.

    Estou com uma dúvida.

    Para fazer referência de uma coluna de uma listbox no vba de um form eu utilizo

    Me.[Campo].Caption = Forms![CADASTRO DE ADOLESCENTES]![Lista784].Column(2)

    Funciona perfeitamente, mas se uso em um critério de uma consulta

    Como [Forms]![CADASTRO DE ADOLESCENTES]![Lista784].Column(2)

    não funciona de forma alguma. Deve ser algo simples, mas, como iniciante, não estou conseguindo entender.
    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Dúvida na referência de coluna de listbox em uma consulta Empty Re: [Resolvido]Dúvida na referência de coluna de listbox em uma consulta

    Mensagem  JPaulo em 30/9/2019, 13:44

    Olá;

    Essa referencia direta não funciona em criterio de consulta.

    O que se faz nesses casos, é você inserir uma caixa de texto em modo oculto no seu form e jogar o valor nela;

    Código:
    Me.SuaCaixaTextoOculta.Value= Forms![CADASTRO DE ADOLESCENTES]![Lista784].Column(2)

    Ae na consulta já pode usar e abusar;

    Código:
    Como [Forms]![CADASTRO DE ADOLESCENTES]![SuaCaixaTextoOculta]


    .................................................................................
    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]Dúvida na referência de coluna de listbox em uma consulta Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Dúvida na referência de coluna de listbox em uma consulta Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Dúvida na referência de coluna de listbox em uma consulta Folder_announce_new Instruções SQL como utilizar...
    leoni_dias
    leoni_dias
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 180
    Registrado : 14/08/2011

    [Resolvido]Dúvida na referência de coluna de listbox em uma consulta Empty Re: [Resolvido]Dúvida na referência de coluna de listbox em uma consulta

    Mensagem  leoni_dias em 30/9/2019, 13:51

    Bom dia, JPaulo.

    Obrigado.

    Me desculpe por ter dado o tópico como resolvido antes de postar uma dúvida.

    Quais diferenças no uso de:

    [NomeCampo] = Forms![CADASTRO DE ADOLESCENTES]![ListaX].Column(2)

    [NomeCampo].Text = Forms![CADASTRO DE ADOLESCENTES]![ListaX].Column(2)

    [NomeCampo].Value = Forms![CADASTRO DE ADOLESCENTES]![ListaX].Column(2)
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2298
    Registrado : 22/11/2016

    [Resolvido]Dúvida na referência de coluna de listbox em uma consulta Empty Re: [Resolvido]Dúvida na referência de coluna de listbox em uma consulta

    Mensagem  DamascenoJr. em 1/10/2019, 02:50

    [NomeCampo]
    Esta indicação é neutra. Algo como a tal célula tronco, isto é, pode indicar qualquer propriedade do controle ou até mesmo o próprio controle.

    Veja:
    Código:
    Dim ctl as control
    Dim strX as string

    ctl = me![NomeCampo] 'aqui a variável ctl assumirá tudo e todas as propriedades do controle [NomeCampo]
    strX = me![NomeCampo] 'aqui a variável strX assumirá o valor do controle [NomeCampo]
                                        'se [NomeCampo] tiver o valor "FulanoDeTal" então strX será "FulanoDeTal"

    Como eu disse, neste caso a indicação é neutra, o que será assumido depende de como e onde será usado.

    Text e Value são quase iguais. Com o "Text" você consegue capturar o valor de um campo no momento em que ele está sendo digitado. É mais usado no evento "Ao alterar" pois a medida que o usuário vai alterando um controle o valor vai sendo capturado. Formulários que usam filtros a medida que o usuário digita é exemplo de uso desta propriedade. Se você usar esta propriedade no evento após atualizar então não terá diferença para o "Value".

    O "value" é usado para dar indicação completa. Eu não tinha o hábito de usá-lo, mas passei a ter. Com ele eu digo direto ao código que o que deve ser capturado é o valor de um controle. Assim o código não precisa interpretar o que deve ser lido no controle como nos casos das indicações neutras.

    Alguns usuários declaram as variáveis mas não dizem o tipo, com isso abre margem pro código interpretar como quer, veja
    Código:
    Dim varVariant

    varVariant = me![NomeCampo] 'aqui a variável assumirá tudo e todas as propriedades do controle, ou seja, será do tipo control
    varVariant = me![NomeCampo].Value 'aqui a variável assumirá o valor do controle, ou seja, poderá será um valor do tipo texto, numérico, booleano, data


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.

      Data/hora atual: 22/10/2020, 01:36