Come aggiungere un calendario in Excel

0 Condivisioni

Hai la necessità di aggiungere un calendario in Excel con una popup che appare nel momento in cui clicchi su una determinata cella? Vuoi dare un effetto più bello al tuo foglio excel ed evitare che l’utente inserisca la data digitandola? Bene continua a leggere, in questo articolo ti spiegherò come aggiungere un calendario in excel in pochi e semplici passaggi.

Tutto quello che devi fare per avere un calendario Excel, è armarti di pazienza e seguire quello che ti illustrerò nelle prossime righe.

Segui Informarea su Telegram

Se non hai il controllo calendario devi scaricarti il file MSCAL.OCX (in questa pagina) e dopo averlo incollato nella cartella c:\windows\system32 registrarlo con regsvr32 mscal.ocx digitandolo nella finestra di Esegui (WIN+R). Al termine puoi caricarlo in Strumenti > Riferimenti > Sfoglia.

Come creare un calendario con Excel

come creare un calendario con excel

Per aggiungere un calendario in excel devi prima di tutto attivare nei Riferimenti di Excel, in ambiente VBA, Microsoft Calendar Control 8.0 (se hai la versione 2010 di Excel). Per farla ti basta andare in alto su Sviluppo e cliccare sull’icona (in alto a sinistra) Visual Basic, per aprire l’ambiente Microsoft Visual Basic Application.

calendario su excel

Se non ti ritrovi nel menu in alto la voce Sviluppo, per attivarla devi andare su File > Opzioni > Personalizzazione Barra multifunzione. Nel gruppo di destra scegli la voce Schede principali,  metti una spunta alla voce Sviluppo e premi il tasto OK.

calendario con excel

In ambiente VBA clicca, sulla sinistra, sul foglio su cui stai lavorando e copia e incolla le seguenti righe di codice:

Private Sub Calendar1_Click()

ActiveCell.Value = CDbl(Calendar1.Value)

' ActiveCell.NumberFormat = "mm/dd/yyyy"

ActiveCell.Select

Calendar1.Visible = False

End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub

If Not Application.Intersect(Range("I4:I8"), Target) Is Nothing Then

Calendar1.Left = Target.Left + Target.Width - Calendar1.Width

Calendar1.Top = Target.Top + Target.Height

Calendar1.Visible = True

' select Today's date in the Calendar

'Calendar1.Value = Date

If Not IsDate(Target.Value) Then

Calendar1.Value = Date

Else

Calendar1.Value = Target.Value

End If

ElseIf Calendar1.Visible Then Calendar1.Visible = False

End If

End Sub

Per far apparire l’oggetto calendario vai su Sviluppo > Inserisci > Altri Controlli (Icona con martello e chiave) e qui nella finestra che appare scegli Controllo Calendario 8.0, mettendoti con il cursore tra le celle I4:I8.

Salva il tutto e prova a cliccare su una cella compresa tra I4 e I8. Puoi naturalmente cambiare range modificandolo in questa riga di codice If Not Application.Intersect(Range(“I4:I8”), Target) Is Nothing Then

Impostando Calendar1.visible = False nella funzione Private Sub Calendar1_Click(), potrai fare in modo che al momento del click sulla popup calendario questo sparirà.

Segui Informarea su Telegram

Fabrizio Cannatelli

Autore e fondatore di Informarea, sono un appassionato di informatica e tecnologia da sempre. La voglia di comunicare e di condividere sul Web le mie curiosità e le mie conoscenze mi hanno spinto a lanciarmi nel progetto di questo sito. Nato un po' per gioco e un po' passione, oggi è diventato una grande realtà.

Fabrizio Cannatelli

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.