Salt la conținutul principal

Cum să deschideți un calendar când faceți clic pe o anumită celulă din Excel?

Presupunând că există o gamă de coloane într-o foaie de lucru pe care trebuie să o introduceți și să modificați frecvent datele în interior, dar este plictisit să introduceți sau să modificați data manual de fiecare dată. Cum să introduceți rapid date fără să introduceți manual în intervalul de coloane? Acest articol vorbește despre afișarea unui calendar atunci când faceți clic pe celule dintr-un anumit interval, apoi inserarea datei în celula selectată automat după selectarea datei din calendar.


Apăsați un calendar când faceți clic pe o anumită celulă cu cod VBA

Vă rugăm să rezolvați această problemă după cum urmează pas cu pas.

notițe: Această metodă poate funcționa numai pe Microsoft Excel pe 32 de biți.

Pasul 1: Creați un UserForm cu calendar

Vă rugăm să creați un UserForm care conține calendarul pe care îl veți afișa făcând clic pe o celulă.

1. presa Alt + F11 tastele simultan pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.

2. În Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Formular utilizator.

3. Apoi a Formular utilizator și Toolbox ferestrele apar, în Toolbox, faceți clic pe orice control și faceți clic dreapta, apoi selectați Controale suplimentare din meniul cu clic dreapta. Vedeți captura de ecran:

4. În Controale suplimentare caseta de dialog, derulați în jos pentru a verifica Control Microsoft MonthView opțiune în Controale disponibile , apoi faceți clic pe OK butonul.

5. Apoi puteți vedea Vizualizare lunară butonul este adăugat în Toolbox fereastră. Faceți clic pe acest buton MonthView, apoi faceți clic pe fereastra UserForm1 pentru a crea un Calendar în Formularul de utilizator.

notițe: Puteți ajusta dimensiunea ferestrei UserForm pentru a se potrivi calendarului inserat prin glisarea marginii UserForm.

6. Faceți dublu clic pe calendarul inserat în UserForm1 și în Cod fereastră, vă rugăm să înlocuiți codul original cu următorul script 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

notițe: Acest cod vă poate ajuta să inserați data în celula selectată după selectarea datei din calendar.

Pasul 2: Activați calendarul când faceți clic pe celulă

Acum trebuie să specificați anumite celule pentru a afișa calendarul atunci când faceți clic. Vă rugăm să faceți următoarele.

7. Faceți dublu clic pe numele foii care conține celulele pe care veți face clic pentru a afișa calendarul din stânga Proiect , apoi copiați și lipiți codul VBA de mai jos în fereastra Cod. Vedeți captura de ecran:

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

notițe: în cod, A2: A10 sunt celule pe care veți face clic pentru a afișa calendarul. Vă rugăm să modificați intervalul de celule după cum aveți nevoie.

8. presa Alt + Q tastele simultan pentru a închide Microsoft Visual Basic pentru aplicații fereastră.

De acum înainte, când faceți clic pe orice celulă din intervalul specificat în foaia de lucru curentă, va apărea un calendar așa cum este prezentat mai jos. Și data va fi inserată automat în celula selectată după selectarea datei din calendar.


Apăsați un calendar când faceți clic pe o anumită celulă cu cod VBA

Această secțiune introduce Data Picker utilitatea Kutools pentru Excel. După activarea acestei funcții, faceți clic pe o celulă de dată va apărea un calendar, puteți înlocui cu ușurință data existentă cu o dată nouă cu aceasta. Vă rugăm să urmați pașii de mai jos pentru a aplica această caracteristică.

1. clic Kutools > Conţinut > Activați selectorul de date.

2. După activarea acestei funcții, faceți clic pe o celulă de dată și o pictogramă de calendar va apărea chiar în celulă.

3. Faceți clic pe pictograma calendarului pentru a deschide Data Picker casetă de dialog, apoi faceți clic pe o dată nouă pentru a înlocui data în celula selectată.

note:

  • Buton Anulare: Faceți clic pe acest buton pentru a anula data înlocuirii;
  • Buton Închidere: Faceți clic pe acest buton pentru a închide caseta de dialog Data Picker;
  • Această caracteristică se poate aplica numai celulelor care conțin data.

  Dacă doriți să aveți o perioadă de încercare gratuită (30 de zile) a acestui utilitar, vă rugăm să faceți clic pentru a-l descărca, și apoi mergeți pentru a aplica operația conform pașilor de mai sus.


Articole pe aceeași temă:

Cele mai bune instrumente de productivitate de birou

Caracteristici populare: Găsiți, evidențiați sau identificați duplicatele   |  Ștergeți rândurile goale   |  Combinați coloane sau celule fără a pierde date   |   Rundă fără Formula ...
Super căutare: VLookup cu mai multe criterii    VLookup cu valori multiple  |   VLookup pe mai multe foi   |   Căutare fuzzy ....
Listă derulantă avansată: Creați rapid o listă derulantă   |  Listă drop-down dependentă   |  Listă derulantă cu selectare multiplă ....
Manager de coloane: Adăugați un număr specific de coloane  |  Mutați coloanele  |  Comutați starea vizibilității coloanelor ascunse  |  Comparați intervale și coloane ...
Caracteristici prezentate: Focus pe grilă   |  Vedere de proiectare   |   Big Formula Bar    Manager registru de lucru și foi   |  Biblioteca de resurse (Text automat)   |  Data Picker   |  Combinați foi de lucru   |  Criptare/Decriptare celule    Trimiteți e-mailuri după listă   |  Super Filtru   |   Filtru special (filtrează bold/italic/barat...) ...
Top 15 seturi de instrumente12 Text Instrumente (Adăuga text, Eliminați caractere,...)   |   50+ Diagramă Tipuri de (Gantt Chart,...)   |   40+ Practic Formule (Calculați vârsta pe baza zilei de naștere,...)   |   19 inserare Instrumente (Introduceți codul QR, Inserați imaginea din cale,...)   |   12 Convertire Instrumente (Numere la cuvinte, conversie valutara,...)   |   7 Merge & Split Instrumente (Rânduri combinate avansate, Celule divizate,...)   |   ... și altele

Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru Excel oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp.  Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...

fila kte 201905


Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
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