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

    DatePicker - ampliando as funcionalidades do substituto do controle calendário

    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    DatePicker - ampliando as funcionalidades do substituto do controle calendário Empty DatePicker - ampliando as funcionalidades do substituto do controle calendário

    Mensagem  criquio em Qua 18 Jan 2012, 15:31

    Como muitos sabem, e quem ainda não sabe agora ficará sabendo, o controle calendário existente nas versões 2003 para trás do Access não existe mais nas versões 2007 e 2010. Na versão 2007 ele ainda funciona, mas na 2010 não tem mais suporte.

    Pois bem, entre as soluções para contornar essa questão, uma delas pode ser você usar um controle de terceiros ou então, usar o DatePicker, que é nativo nas versões 2007 em diante e substitui o controle calendário. O problema é que você precisará clicar no ícone do calendário, que aparece quando o campo tipo data recebe o foco, para abrir o calendário e só então escolher a data. Existe uma outra questão que desfavorece o DatePicker pelas vias normais, que é o fato dele perder o DatePicker caso o campo possua máscara de entrada. Bom, aqui veremos como forçar a exibição do DatePicker em campos com máscara e tambem como exibir o calendário automaticamente ao entrar no campo, sem a necessidade de clicar no ícone do DatePicker. Faremos isso usando o nosso querido e idolatrado amigo, o VBA. As linhas de código aqui descritas podem ser usadas no evento "Ao receber foco" do campo tipo data.

    Em primeiro lugar, vamos recordar como definimos, nas propriedades do campo, se o DatePicker será ou não exibido automaticamente: nas propriedades do campo, aba "Formato", linha "Mostrar Selecionador de Datas", temos as duas opções possíveis para essa propriedade, que são as seguintes:

    Nunca - o DatePicker nunca será exibido.
    Para datas - O DatePicker será exibido quando o campo receber o foco, caso seja tipo data e caso não tenha máscara de entrada.

    Bom, mas e se eu quiser que meu campo tenha a máscara e tambem exiba o DatePicker quando receber o foco? Aqui, partiremos para o VBA. As opções que definimos nas propriedades do campo, usando o método acima, tambem podem ser feitas via VBA.

    Para não exibir o DatePicker:
    Me.NomeDoCampo.ShowDatePicker = 0

    Para exibir o DatePicker:
    Me.NomeDoCampo.ShowDatePicker = 1

    Bem, mas ainda fica o problema do DatePicker não ser exibido caso o campo tenha máscara. Para esse caso, podemos usar um terceiro parâmetro:

    Para exibir o DatePicker em campo com máscara:
    Me.NomeDoCampo.ShowDatePicker = 2

    E se eu quiser que o calendário seja exibido automaticamente quando o campo receber o foco sem a necessidade de clicar no ícone do calendário?

    Para exibir o calendário automaticamente:
    DoCmd.RunCommand acCmdShowDatePicker


    .................................................................................
    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
    Convidad
    Convidado

    DatePicker - ampliando as funcionalidades do substituto do controle calendário Empty Re: DatePicker - ampliando as funcionalidades do substituto do controle calendário

    Mensagem  Convidad em Qua 18 Jan 2012, 15:54

    para complementar tambem explicamos aqui

    http://msdn.microsoft.com/en-us/library/gg251104.aspx

    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    DatePicker - ampliando as funcionalidades do substituto do controle calendário Empty Re: DatePicker - ampliando as funcionalidades do substituto do controle calendário

    Mensagem  JPaulo em Qua 18 Jan 2012, 15:54

    Excelente contribuição Criquio.


    .................................................................................
    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

    DatePicker - ampliando as funcionalidades do substituto do controle calendário Folder_announce_new Utilize o Sistema de Busca do Fórum...
    DatePicker - ampliando as funcionalidades do substituto do controle calendário Folder_announce_new 102 Códigos VBA Gratuitos...
    DatePicker - ampliando as funcionalidades do substituto do controle calendário Folder_announce_new Instruções SQL como utilizar...
    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    DatePicker - ampliando as funcionalidades do substituto do controle calendário Empty Re: DatePicker - ampliando as funcionalidades do substituto do controle calendário

    Mensagem  criquio em Qua 18 Jan 2012, 16:34

    Obrigado pelo incentivo JPaulo.

    Ricardo, você já usou esse ActiveX do artigo que postou no Access 2007? Pergunto porque o meu não tem ele na lista. Então, ao que parece, ele não é nativo no Access 2007, sendo necessário, talvez, ter a biblioteca para poder referenciar. Sabe dizer se no 2010 ele é nativo? Eu tenho o 2010 aqui mas como está instalado no mesmo SO do 2007, prefiro não abri-lo agora para não ter que atualizar o sistema para usá-lo e depois fazer tudo de novo para usar o 2007 novamente Very Happy


    .................................................................................
    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.

    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3209
    Registrado : 21/04/2011

    DatePicker - ampliando as funcionalidades do substituto do controle calendário Empty Re: DatePicker - ampliando as funcionalidades do substituto do controle calendário

    Mensagem  Marcelo David em Qui 02 Fev 2012, 20:48

    Ótimo dica criquio! Mas uma vez parabéns!


    .................................................................................
    Marcelo David | DatePicker - ampliando as funcionalidades do substituto do controle calendário LinkedIn_Icon.jpg.original LinkedIn
    https://www.freetool.dev
    Hephraim BF
    Hephraim BF
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 134
    Registrado : 05/03/2013

    DatePicker - ampliando as funcionalidades do substituto do controle calendário Empty Re: DatePicker - ampliando as funcionalidades do substituto do controle calendário

    Mensagem  Hephraim BF em Dom 28 Jan 2018, 11:49

    Excelente criquio!!!

    Só encontrei um pequeno probleminha quando estava testando.

    Se eu clicar numa data do calendário é retornado apenas o dia no campo.

      Data/hora atual: Sex 04 Dez 2020, 05:16