Επιλογή ημερομηνίας Excel - Πώς να εισαγάγετε την επιλογή ημερομηνίας (Ημερολόγιο) στο Excel;

Πώς να εισαγάγετε την επιλογή ημερομηνίας στο Excel;

Για να εισαγάγουμε το Drop Down Calendar, θα χρησιμοποιήσουμε ένα στοιχείο ελέγχου ActiveX, το οποίο είναι το «Microsoft Date and Time Picker Control 6.0 (SP6)» .

Ας υποθέσουμε ότι πρέπει να διατηρήσουμε δεδομένα για υπαλλήλους μιας εταιρείας. Υπάρχουν πολλά πεδία όπως

  • Κωδικός Emp
  • Emp όνομα
  • Ημερομηνία συμμετοχής Emp
  • Τμήμα Emp

Για να εισαγάγετε δεδομένα στο MS Excel, δημιουργήσαμε την ακόλουθη μορφή.

Για να εισαγάγετε την Ημερομηνία Συμμετοχής Emp, πρέπει να δημιουργήσουμε ένα αναπτυσσόμενο ημερολόγιο, ώστε να είναι ευκολότερο για τον χρήστη να εισάγει ημερομηνίες συμμετοχής.

Για να δημιουργήσετε ένα αναπτυσσόμενο ημερολόγιο, δίνονται παρακάτω βήματα -

Πρέπει να εισαγάγουμε ένα "στοιχείο ελέγχου ActiveX" με το όνομα "Microsoft Date and Time Picker Control 6.0 (SP6)" . Για εισαγωγή, θα χρησιμοποιήσουμε την εντολή «Εισαγωγή» κάτω από την ομάδα «Έλεγχοι» στο «Προγραμματιστής».

Εάν η καρτέλα «Προγραμματιστής» δεν είναι ορατή, ακολουθούν τα βήματα που πρέπει να ακολουθήσετε για να κάνετε το ίδιο ορατό.

  • Βήμα 1: Κάτω από το μενού "Αρχείο" , επιλέξτε "Επιλογές"
  • Βήμα 2: Θα ανοίξει ένα παράθυρο διαλόγου με το όνομα «Επιλογές Excel» . Επιλέξτε «Προσαρμογή κορδέλας» από την αριστερή άκρη του πλαισίου διαλόγου. Πλαίσιο ελέγχου για την καρτέλα «Προγραμματιστής» και κάντε κλικ στο «OK».
  • Βήμα 3: Τώρα, μπορούμε να δούμε την καρτέλα «Προγραμματιστής» στο τέλος της κορδέλας.
  • Βήμα 4: Επιλέξτε "Περισσότερα στοιχεία ελέγχου" από τα στοιχεία ελέγχου ActiveX.
  • Βήμα 5: Επιλέξτε "Microsoft Date and Time Picker Control 6.0 (SP6)" από τη λίστα και κάντε κλικ στο "OK".
  • Βήμα 6: Κάντε κλικ οπουδήποτε στο φύλλο εργασίας για να δημιουργήσετε το αναπτυσσόμενο ημερολόγιο.
  • Βήμα 7: Κάντε δεξί κλικ στο "Date Picker" και επιλέξτε "Properties" από τη λίστα.
  • Βήμα 8: Αλλάξτε την τιμή από "False" σε "True" για την ιδιότητα "CheckBox", ώστε να είναι επίσης αποδεκτές οι τιμές null. Κλείστε το παράθυρο διαλόγου "Ιδιότητες" .
  • Βήμα 9: Κάντε δεξί κλικ στο Date Picker ξανά και επιλέξτε «Προβολή κώδικα» από το μενού με βάση τα συμφραζόμενα.
  • Βήμα 10: Στο «Visual Basic Editor», μπορούμε να δούμε ότι κάποιος κώδικας είναι ήδη γραμμένος. Αντικαταστήστε τον κωδικό με τον ακόλουθο κωδικό.

Κώδικας:

Private Sub Worksheet_SelectionChange (ByVal Target As Range) With Sheet1.DTPicker1 .Height = 20 .Width = 20 If Not Intersect (Target, Range ("C: C")) is not then then .Visible = True .Top = Target.Top. Αριστερά = Target.Offset (0, 1). Left .LinkedCell = Target.Address Else .Visible = False End if End with End Sub
  • Βήμα 11: Η πρώτη δήλωση στον κώδικα λέει στο MS Excel Compiler να εκτελεί τον κώδικα κάθε φορά που επιλέγεται ένα νέο κελί (Η επιλογή αλλάζει). Το επιλεγμένο κελί αποστέλλεται στη διαδικασία Sub ως «Στόχος».
Private Sub Worksheet_SelectionChange (Στόχος ByVal ως εύρος)
  • Βήμα 12: Αυτές οι δηλώσεις ορίζουν το ύψος και το πλάτος της επιλογής ημερομηνίας σε 20 πόντους στο excel. Μπορεί να παρατηρηθεί ότι έχουμε χρησιμοποιήσει τον τελεστή «With» , ώστε να μην χρειάζεται να αναφερόμαστε ξανά στο DTPicker1 .
 Με το Sheet1.DTPicker1. Ύψος = 20. Πλάτος = 20
  • Βήμα 13: Η ακόλουθη ρήτρα «Εάν» ορίζει τα κριτήρια ότι εάν επιλεγεί οποιοδήποτε κελί στη στήλη «Γ» , μόνο τότε το Date Picker αποκτά ορατότητα. Έχουμε χρησιμοποιήσει τη συνάρτηση «Intersect» καθώς αυτή η συνάρτηση ελέγχει αν έχουμε επιλέξει οποιοδήποτε κελί στη στήλη C, τότε αυτή η συνάρτηση θα επιστρέψει τη διεύθυνση. Διαφορετικά, η τιμή θα ήταν μηδενική.
Εάν δεν είναι τεμνόμενος (Στόχος, Εύρος ("C: C")) δεν είναι τίποτα τότε. Ορατό = True
  • Βήμα 14: Η ιδιότητα "Top" του Date Picker ορίζεται ως ίση με την τιμή ιδιοκτησίας "Top" του επιλεγμένου κελιού. Αυτό σημαίνει ότι αυτό θα συμβαδίζει με το άνω περίγραμμα του επιλεγμένου κελιού.
.Top = Target.Top
  • Βήμα 15: Αυτή η δήλωση ορίζει την αριστερή ιδιότητα του Επιλογέα ημερομηνίας ίση με εκείνη του επόμενου δεξιού κελιού του επιλεγμένου κελιού (Απόσταση αριστερού περιγράμματος της στήλης D από την άκρη αριστερά του φύλλου εργασίας). Για να λάβουμε την αναφορά του επόμενου δεξιού κελιού, χρησιμοποιήσαμε τη συνάρτηση "Offset" με 0 ως όρισμα σειράς και 1 ως όρισμα στήλης καθώς αυτό θα πάρει μια αναφορά στο κελί στην επόμενη στήλη.
.Left = Target.Offset (0, 1). Αριστερά
  • Step 16: This statement links the Date Picker with the Target cell so that whichever value is selected in the drop-down calendar that is displayed in the cell.
.LinkedCell = Target.Address
  • Step 17: The ‘Else’ statement tells the compiler to not display the Date Picker when any cell except that in the C column is selected.
Else .Visible = False
  • Step 18: In the end, we close the ‘If.’
End If
  • Step 19: At last, we need to close ‘With.’
End With
  • Step 20: Now, Sub Procedure will end.
End Sub

Make sure we save the file with the ‘.xlsm’ extension as it saves the VBA code we have written, and we will be able to run this code when any cell is selected in the C column.

Now, whenever we select any cell in the ‘C’ column, we can see a drop-down calendar at the top right corner of the selected cell. We can open the drop-down calendar by clicking on the down arrow symbol.

We need to click on any date in the calendar in the selected month to enter that date in the selected cell.

We can change month to previous or next using the arrow button placed at the left and right side of the calendar.

We can also click on the month to choose a month from the drop-down.

We can also change year by clicking on year and then using up and down arrows to choose the required one.

Things to Remember

  • ‘Microsoft Date and Time Picker Control 6.0 (SP6)’ is not available for the 64-bit version of MS Excel.
  • Αφού γράψουμε τον κώδικα VBA, πρέπει να αποθηκεύσουμε το αρχείο με επέκταση ".xlsm" (Excel Macro-Enabled Workbook). Διαφορετικά, ο κωδικός VBA δεν θα εκτελείται.

ενδιαφέροντα άρθρα...