Calendário no Excel 2010

Calendário no Excel 2010

Objetivo: Criar um calendário que pode ser consultado a qualquer hora no Excel, tal como o calendário do Windows. Sendo que a data selecionada irá para a célula que estiver ativa, no Excel 2010.

É sabido que no Excel 2010 foram retirados alguns componentes VBA, em boa parte por causa da arquitetura de 64 bits necessária para a sua instalação.

Um destes componentes é o calendário que era da classe mscal.ocx ao qual foi demonstrado o uso no artigo http://guiadoexcel.com.br/calendario-no-excel-com-vba, aonde era cria do um calendário VBA em um formulário que era chamado de qualquer local na planilha e ao clicar duas vezes ele colocava estes dados na planilha.

Pois bem, como isto não funciona no Excel 2010 como já disse antes, a leitora Marta Yumi Matsunaga enviou um componente interessantíssimo criado por Krisztina SzabóGábor Madács e Roberto Mensa em https://sites.google.com/site/e90e50/calendar-control-class aos quais tiro o chapéu pelo trabalho e agradeço por disponibilizá-lo livremente.

No projeto criado por estes três desenvolvedores foi criado uma classe calendário para ser usada também no Excel 2010, permitindo desta forma fazermos o seu uso da mesma forma como foi demonstrado no artigo anterior que eu havia feito.

Como Utilizar o calendário no Excel

Importando a classe

1. Baixe a classe VBA em: https://sites.google.com/site/e90e50/calendar-control-class clicando sobre a seta para baixo ao final da página em cCalendar.cls.

2. Clique na guia Desenvolvedor e em Visual Basic

3. Clique com o botão direito no projeto PERSONAL (VBAProject (PERSONAL.XLSB))

4. Selecione o arquivo que foi baixado com o nome clCalendar.cls 

5. Será adicionada a pasta Módulos de classe se não houver e a classe clCalendar estará dentro dela.

Criando o formulário

1. Clique em Inserir -> Userform nos menus de topo do Visual Basic

2. No formulário criado Insira um frame habilitando a caixa de ferramentas de formulário e adicionando o quadro ao formulário (frame) conforme abaixo

3. Clique com o botão direito sobre o formulário na árvore de projetos e selecione Exibir Código

4. Assim que for exibida a janela de código fonte você deve digitar os seguintes códigos:

Option Explicit
'UserForm with Frame1
Private WithEvents Calendar1 As cCalendar
 
Private Sub Calendar1_DblClick()
    ActiveCell.Value = Calendar1.Value
    Unload Me
End Sub
Private Sub UserForm_Initialize()
    Set Calendar1 = New cCalendar
    With Calendar1
        .Add_Calendar_into_Frame Me.Frame1
        .UseDefaultBackColors = True
        .DayLength = 3
        .MonthLength = mlENShort
    End With
End Sub
 
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    Set Calendar1 = Nothing
End Sub

6. Estes códigos são necessários para adicionar o formulário assim que ele é iniciado, fechar o componente assim que ele é fechado e ao clicar duas vezes sobre um dia, transportar estes dados para a célula da qual ele foi chamado.

7. A partir deste ponto você já pode clicar em F5 para compilar e exibir a planilha.

Usando o calendário

1. O primeiro passo  para utilizar o calendário é inserir um módulo de onde será chamado, para isso clique em Inserir -> Módulo

2. No módulo criado clique duas vezes sobre o mesmo e depois insira o código abaixo que serve para chamar o formulário

Sub lsChamaCalendario()
    UserForm1.Show
End Sub

3. Salve as suas alterações e volte ao ambiente do Microsoft Excel

4. Clique na guia Desenvolvedor e no botão Macros e selecione PERSONAL!lsChamaCalendario, depois clique no botão opções e adicione a chamado ao atalho pelo pressionamento de CTRL+SHIFT+K

5. Após realizar todas estas tarefas você já poderá chamar o calendário de qualquer lugar em qualquer planilha, bastando para isso pressionar CTRL+SHIFT+K e ao selecionar a data e clicar duas vezes o valor da data selecionada será automaticamente adicionado a sua planilha.

Abraço

Marcos Rieper

excel vba

SISTEMA DE GESTÃO CONTA AZUL

O Excel é uma plataforma de trabalho muito aberta para servir ao gerenciamento de dados de uma empresa, dado a complexidade e a integração entre as diversas áreas que a compõe. Mas é a melhor para analisar suas informações.

Com a intenção de atender as micro e pequenas empresas a Conta Azul criou um software de gestão aonde você tudo o que você precisa para gerir a sua empresa: Estoque, Vendas, Financeiro e ainda emite Nota Fiscal Eletrônica, tudo isso em um sistema simples de trabalhar, que você acessa pela internet, não há a necessidade de comprar servidores e preocupar-se com backup e atendimento através de 0800.

O preço da ferramenta também chama a atenção, sendo um preço mais do que justo para se ter o controle dos dados e a geração de informações para a análise do seu negócio.

ContaAzul é um software de gestão financeira e fiscal para micro e pequenas empresas. Ele funciona 100% em plataforma web, não necessitando nenhuma instalação ou atualização. Você pode acessar de qualquer lugar e não tem necessidade de comprar nova licença caso troque de computador.

  O Guia do Excel recomenda o Conta Azul no gerenciamento de sua empresa.
Use QR-Code to get this permaking using your Smartphone. QR Code for Calendário no Excel 2010

16 Comentários

  1. nailson disse:

    Super!!! muito bom, fiz uma planilha com calendário no 2007 e despois de uma semana migrei pra o 2010. Ou seja fu@eu minha vida…mas aí agora tudo voltou ao normal…vlw mesmo

  2. Marcos Rieper disse:

    Obrigado Nailson, fico feliz pela visita e pela lembrança.

    Abraço

    Marcos Rieper

  3. Rieper,meu calendario saiu sem formatação ou seja não da pra ver mta coisa oq fiz de errado?

  4. Hugo disse:

    Meu calendário saiu sem formatação, não consigo visualizar todos os dias do Mês.
    O que pode ser feito?

    Desde já agradeço!

  5. Marta Yumi disse:

    Perfeito! Funcionou certinho.

  6. Leonardo disse:

    Boa noite, funcionou porém quando clico a data não é inserida, poderia me dar uma dica?

  7. leonardo disse:

    cara estou tendo dificuldade vc pode me ajudar ta dando erro na aplicação.

  8. Luis Henrique disse:

    A dica é sensacional, mas no site que você recomendou a classe, esse arquivo não aparece lá (cCalendar.cls), só tem arquivo .xls e .xlsm.
    Você pode me ajudar??
    Muito obrigado pela ajuda.
    Abraços.

  9. Mariana disse:

    Boa Tarde Marcos,

    No link informado por você está aparecendo o código, onde baixo o arquivo?

    Desde já agradeço.

  10. Boas a todos! não manjo muito de excel, estou com dificuldade no seguinte ítem. Onde consigo visualizar o tal Projeto PERSONAl ?? ele esta no próprio arquivo baixado?? Abri o arquivo baixado mas em Desenvolvedor- Visual Basic NÃO vejo esta nomenclatura PERSONAL!! Abri também um documento vazio e também não visualizei esta PERSONAL??!! alguém pode me dar uma luz? Outra coisa, NÃO vi também o arquivo com extensão CLS, mas baixei todos na dúvida qual deve ser usado?

    att
    Claudio

  11. Olá Marcos, agora sim consegui obter o project PERSONAL… porém onde esta o tal arquivo extensão cls!!?? pelo que vi os downloads são de xls ou xlsm. É algum destes que tenho que importar? Vi que tente um código fonte do cCalendar e um picker vou ter que usá-los na ausência do arquivo cls?… e pra finalizar, criei a macro q vc disponibilizou para ler arquivos grandes, na hora de fechar o excel pede pra salvar… onde salvo para que sirva pro office quando reabrí-lo? … valeu a a atenção.

  12. Olá Marcos,

    Consegui obter o arquivo cls… Eu abri o xls baixado e exportei o cCalendar. Este goi exportado já em cls, depois só segui os passos indicado por vc.

    Só uma dúvida, quando abro o calendário, lá no topo, aparece o nome userform1… tem como mudar esta nomenclatura para Calendário, assim o quadro ficará com o título do que ele é, ou seja o calendário?… naõ sei se fiu claro!

    abraços e obrigado
    Claudio

Deixe o seu comentário


 
%d blogueiros gostam disto: