Μετάβαση στο κύριο περιεχόμενο

Πώς να εμφανίσετε ένα ημερολόγιο όταν κάνετε κλικ σε ένα συγκεκριμένο κελί στο Excel;

Ας υποθέσουμε ότι υπάρχει ένα εύρος στηλών σε ένα φύλλο εργασίας που πρέπει να εισαγάγετε συχνά και να αλλάζετε ημερομηνίες μέσα, αλλά είναι βαρετό να εισάγετε ή να αλλάζετε ημερομηνία χειροκίνητα ανά ώρα. Πώς να εισαγάγετε γρήγορα ημερομηνίες χωρίς να πληκτρολογήσετε χειροκίνητα το εύρος στηλών; Αυτό το άρθρο αναφέρεται για την εμφάνιση ενός ημερολογίου όταν κάνετε κλικ σε κελιά σε ένα συγκεκριμένο εύρος και, στη συνέχεια, την εισαγωγή ημερομηνίας στο επιλεγμένο κελί αυτόματα μετά την επιλογή ημερομηνίας στο ημερολόγιο.


Αναδυθείτε ένα ημερολόγιο όταν κάνετε κλικ σε ένα συγκεκριμένο κελί με κωδικό VBA

Λύστε αυτό το πρόβλημα ως εξής βήμα προς βήμα.

Note: Αυτή η μέθοδος μπορεί να λειτουργήσει μόνο στο Microsoft Excel 32-bit.

Βήμα 1: Δημιουργήστε ένα UserForm με ημερολόγιο

Δημιουργήστε μια φόρμα χρήστη που περιέχει το ημερολόγιο που θα εμφανιστεί κάνοντας κλικ σε ένα κελί.

1. Τύπος άλλος + F11 ταυτόχρονα για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Στο Microsoft Visual Basic για εφαρμογές παράθυρο, κάντε κλικ στην επιλογή Κύριο θέμα > UserForm.

3. Τότε α UserForm και σε έναν Εργαλειοθήκη αναδυόμενα παράθυρα, στο Εργαλειοθήκη, κάντε κλικ σε οποιοδήποτε στοιχείο ελέγχου και κάντε δεξί κλικ και, στη συνέχεια, επιλέξτε Πρόσθετοι έλεγχοι από το μενού με δεξί κλικ. Δείτε το στιγμιότυπο οθόνης:

4. Στο Πρόσθετοι έλεγχοι πλαίσιο διαλόγου, μετακινηθείτε προς τα κάτω για να ελέγξετε το Έλεγχος Microsoft MonthView επιλογή του Διαθέσιμα στοιχεία ελέγχου πλαίσιο και, στη συνέχεια, κάντε κλικ στο OK κουμπί.

5. Τότε μπορείτε να δείτε το Προβολή μήνα το κουμπί προστίθεται στο Εργαλειοθήκη παράθυρο. Κάντε κλικ σε αυτό το κουμπί MonthView και, στη συνέχεια, κάντε κλικ στο παράθυρο UserForm1 για να δημιουργήσετε ένα Ημερολόγιο στη φόρμα χρήστη.

Note: Μπορείτε να προσαρμόσετε το μέγεθος του παραθύρου UserForm ώστε να ταιριάζει με το ημερολόγιο που έχει εισαχθεί σύροντας το περίγραμμα του UserForm.

6. Κάντε διπλό κλικ στο ημερολόγιο που έχει εισαχθεί στο UserForm1 και στο Κώδικας παράθυρο, αντικαταστήστε τον αρχικό κώδικα με το ακόλουθο σενάριο VBA.

VBA code: create a user form with calendar

Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
 On Error Resume Next
   Dim xRg As Object
   For Each xRg In Selection.Cells
      xRg.Value = DateClicked
   Next xRg 
   Unload Me
End Sub

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

Βήμα 2: Ενεργοποιήστε το Ημερολόγιο όταν κάνετε κλικ στο κελί

Τώρα πρέπει να καθορίσετε ορισμένα κελιά για να εμφανιστεί το ημερολόγιο όταν κάνετε κλικ. Κάντε τα εξής:

7. Κάντε διπλό κλικ στο όνομα του φύλλου που περιέχει τα κελιά που θα κάνετε κλικ για να εμφανιστεί το ημερολόγιο στα αριστερά Σχέδιο παράθυρο και, στη συνέχεια, αντιγράψτε και επικολλήστε τον παρακάτω κώδικα VBA στο παράθυρο Code. Δείτε το στιγμιότυπο οθόνης:

VBA code: Click cell to pop up calendar

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If (Target.Count = 1) Then
    If Not Intersect(Target, Range("A2:A10")) Is Nothing Then UserForm1.Show
    End If
End Sub

Note: στον κωδικό, A2: A10 είναι κελιά που θα κάνετε κλικ για να εμφανιστεί το ημερολόγιο. Αλλάξτε το εύρος κελιών όπως χρειάζεστε.

8. Τύπος άλλος + Q ταυτόχρονα για να κλείσετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

Από τώρα και στο εξής, όταν κάνετε κλικ σε οποιοδήποτε κελί εντός του καθορισμένου εύρους στο τρέχον φύλλο εργασίας, θα εμφανιστεί ένα ημερολόγιο όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης. Και η ημερομηνία θα εισαχθεί αυτόματα στο επιλεγμένο κελί μετά την επιλογή ημερομηνίας από το ημερολόγιο.


Αναδυθείτε ένα ημερολόγιο όταν κάνετε κλικ σε ένα συγκεκριμένο κελί με κωδικό VBA

Αυτή η ενότητα παρουσιάζει το Επιλογή ημερομηνίας χρησιμότητα του Kutools για Excel. Αφού ενεργοποιήσετε αυτήν τη λειτουργία, κάντε κλικ σε ένα κελί ημερομηνίας που θα εμφανιστεί ένα ημερολόγιο, μπορείτε εύκολα να αντικαταστήσετε την υπάρχουσα ημερομηνία με μια νέα ημερομηνία με αυτό. Ακολουθήστε τα παρακάτω βήματα για να εφαρμόσετε αυτήν τη δυνατότητα.

1. κλικ Kutools > Περιεχόμενο > Ενεργοποίηση επιλογής ημερομηνίας.

2. Αφού ενεργοποιήσετε αυτήν τη δυνατότητα, κάντε κλικ σε ένα κελί ημερομηνίας και θα εμφανιστεί ένα εικονίδιο ημερολογίου ακριβώς στο κελί.

3. Κάντε κλικ στο εικονίδιο ημερολογίου για να ανοίξετε το Επιλογή ημερομηνίας πλαίσιο διαλόγου και, στη συνέχεια, κάντε κλικ σε μια νέα ημερομηνία για να αντικαταστήσετε την ημερομηνία σε επιλεγμένο κελί.

:

  • Κουμπί αναίρεσης: Κάντε κλικ σε αυτό το κουμπί για αναίρεση ημερομηνίας αντικατάστασης.
  • Κουμπί Κλείσιμο: Κάντε κλικ σε αυτό το κουμπί για να κλείσετε το παράθυρο διαλόγου "Επιλογή ημερομηνίας".
  • Αυτή η δυνατότητα μπορεί να εφαρμοστεί μόνο σε κελιά που περιέχουν ημερομηνία.

  Εάν θέλετε να έχετε μια δωρεάν δοκιμή (30-ημερών) αυτού του βοηθητικού προγράμματος, κάντε κλικ για να το κατεβάσετεκαι μετά πηγαίνετε για να εφαρμόσετε τη λειτουργία σύμφωνα με τα παραπάνω βήματα.


Σχετικά Άρθρα:

Τα καλύτερα εργαλεία παραγωγικότητας γραφείου

Δημοφιλή χαρακτηριστικά: Εύρεση, επισήμανση ή αναγνώριση διπλότυπων   |  Διαγραφή κενών γραμμών   |  Συνδυάστε στήλες ή κελιά χωρίς απώλεια δεδομένων   |   Γύρος χωρίς φόρμουλα ...
Σούπερ Αναζήτηση: VLookup πολλαπλών κριτηρίων    VLookup πολλαπλών τιμών  |   VLookup σε πολλά φύλλα   |   Ασαφής αναζήτηση ....
Σύνθετη αναπτυσσόμενη λίστα: Γρήγορη δημιουργία αναπτυσσόμενης λίστας   |  Εξαρτημένη αναπτυσσόμενη λίστα   |  Πολλαπλή αναπτυσσόμενη λίστα ....
Διαχειριστής στήλης: Προσθέστε έναν συγκεκριμένο αριθμό στηλών  |  Μετακίνηση στηλών  |  Εναλλαγή κατάστασης ορατότητας κρυφών στηλών  |  Συγκρίνετε εύρη και στήλες ...
Επιλεγμένα Χαρακτηριστικά: Εστίαση πλέγματος   |  Προβολή σχεδίου   |   Μεγάλη Formula Bar    Διαχείριση βιβλίου εργασίας & φύλλου   |  Βιβλιοθήκη πόρων (Αυτόματο κείμενο)   |  Επιλογή ημερομηνίας   |  Συνδυάστε φύλλα εργασίας   |  Κρυπτογράφηση/Αποκρυπτογράφηση κελιών    Αποστολή email ανά λίστα   |  Σούπερ φίλτρο   |   Ειδικό φίλτρο (φίλτρο με έντονη γραφή/πλάγια γραφή/διαγραφή...) ...
Κορυφαία 15 σύνολα εργαλείων12 Κείμενο Εργαλεία (Προσθήκη κειμένου, Κατάργηση χαρακτήρων, ...)   |   50 + Διάγραμμα Τύποι (Gantt διάγραμμα, ...)   |   40+ Πρακτικό ΜΑΘΗΜΑΤΙΚΟΙ τυποι (Υπολογίστε την ηλικία με βάση τα γενέθλια, ...)   |   19 Εισαγωγή Εργαλεία (Εισαγωγή κωδικού QR, Εισαγωγή εικόνας από το μονοπάτι, ...)   |   12 Μετατροπή Εργαλεία (Αριθμοί σε λέξεις, Μετατροπή Συναλλάγματος, ...)   |   7 Συγχώνευση & διαχωρισμός Εργαλεία (Σύνθετες σειρές συνδυασμού, Διαίρεση κελιών, ...)   |   ... κι αλλα

Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου.  Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...

kte καρτέλα 201905


Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
Comments (18)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I am not seeing the Microsoft MonthView Control in the listing, but it may be as Pete (#32847) mentioned that this will not work in Office 365 or 64-bit Microsoft Office.
This comment was minimized by the moderator on the site
Hi Teagan Caudle,
I searched and tried the methods suggested in google, but ultimately could not register the MonthView control in Microsoft 365.
Sorry for the inconvenience. Maybe you can check this out.
https://social.technet.microsoft.com/Forums/Azure/en-US/db3b4dff-aad7-4d88-87cc-8f3f117be550/microsoft-windows-common-controls-60-for-office-2016
This comment was minimized by the moderator on the site
There is no Microsoft MonthView Control listed (Office 365), and the directions here doesn't explain how one would get that control, so this is pretty much useless unless you're using an older version of Excel.
This comment was minimized by the moderator on the site
The calendar will show up but when I click on the date, the cell doesn't populate
This comment was minimized by the moderator on the site
Hi,
The code works well in my case. Which Excel version are you using?
This comment was minimized by the moderator on the site
Thank you so much! These directions were super useful :)
This comment was minimized by the moderator on the site
Hi, Is it possible to put the date picker pop-up for multiple column, as in my sheet I have "start date", "end date" and "agreement date". if yes then how?
This comment was minimized by the moderator on the site
Hi jeet,
Follow the steps and replace the range "A2:A10" in the second VBA code with your column range (such as C2:E2).
This comment was minimized by the moderator on the site
Salve il codice funziona benissimo, ma se volessi farlo funzionare anche su un altro foglio
This comment was minimized by the moderator on the site
if i try to select a row, the pop up will activate and the date appears in each cell in that row


how can i avoid this
This comment was minimized by the moderator on the site
Hi Sam,
The code has been updated in the article with the problem solving. Please have a try and thank you for your comment.
This comment was minimized by the moderator on the site
tarihi seçebiliyorum ama a1:a10 hücrelerine seçtiğim tarih eklenmiyor. teşekkür ederim
This comment was minimized by the moderator on the site
Hello everyone,

Can anyone tell me how to popup a calendar in a range of cells, but starting only from the cell right bellow a table header and down bellow in an excel column.


Thank you in advance.
This comment was minimized by the moderator on the site
Use i.e: Range("B6:C30")
This comment was minimized by the moderator on the site
Good Day,
Sorry I didn't got your question. Would be nice if you could provide screenshot of what you are trying to do.
This comment was minimized by the moderator on the site
Use i.e: Range("B6:C30")
This comment was minimized by the moderator on the site
i used these VBA codes and everthing's fine so far. The range is A2:A10 and calendar pops up when you select a cell into it. But if you mark row from 2 to 10 again the calendar pops again. It's the same with column "A" if you mark it, again the calendar pops. How should i proceed, in order to get the calendar only in the range i've defined?
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations