Excel formula: Dinamička mreža kalendara -

Sadržaj

Sažetak

Dinamičku mrežu kalendara možete postaviti na Excel radnom listu s nizom formula, kao što je objašnjeno u ovom članku. U prikazanom primjeru formula u B6 je:

=start-CHOOSE(WEEKDAY(start),0,1,2,3,4,5,6)

gdje je "start" imenovani raspon K5, a sadrži datum 1. rujna 2018.

Obrazloženje

Napomena: Ovaj primjer pretpostavlja da će datum početka biti naveden kao prvi u mjesecu. U nastavku pogledajte formulu koja će dinamički vratiti prvi dan tekućeg mjeseca.

S prikazom rasporeda mreže, glavni je problem izračunati datum u prvoj ćeliji kalendara (B6). To se postiže ovom formulom:

=start-CHOOSE(WEEKDAY(start),0,1,2,3,4,5,6)

Ova formula utvrđuje nedjelju prije prvog dana u mjesecu pomoću funkcije IZBOR za "vraćanje" pravog broja dana na prethodnu nedjelju. CHOOSE savršeno funkcionira u ovoj situaciji jer omogućuje proizvoljne vrijednosti za svaki dan u tjednu. Ovu značajku koristimo za vraćanje na nulti dan kada je prvi dan u mjesecu nedjelja. Više detalja o ovom problemu nalazi se ovdje.

S prvim danom uspostavljenim u B6, ostale formule u mreži jednostavno povećavaju prethodni datum za jedan, počevši od formule u C6:

=IF(B6"",B6,$H5)+1

Ova formula testira ćeliju za vrijednost odmah s lijeve strane. Ako nije pronađena vrijednost, ona povlači vrijednost iz stupca H u gornjem retku. Napomena $ H5 mješovita je referenca za zaključavanje stupca dok se formula kopira kroz mrežu. Ista se formula koristi u svim stanicama, osim u B6.

Pravila uvjetnog oblikovanja

Kalendar koristi formule za uvjetno oblikovanje kako bi promijenio oblikovanje kako bi zasjenio prethodne i buduće mjesece i istaknuo trenutni dan. Oba se pravila primjenjuju na cijelu mrežu. Za prethodne i sljedeće mjesece formula je:

=MONTH(B6)MONTH(start)

Za tekući dan formula je:

=B6=TODAY()

Za više detalja pogledajte: Uvjetno oblikovanje s formulama (10 primjera)

Naslov kalendara

Naslov kalendara - mjesec i godina - izračunavaju se ovom formulom u ćeliji B4:

=start

Formatirano s prilagođenim formatom broja "mmmm yyyy". Za centriranje naslova iznad kalendara, raspon B4: H4 ima vodoravno poravnanje postavljeno na "centriranje preko odabira". Ovo je bolja opcija od spajanja ćelija, jer to ne mijenja strukturu mreže na radnom listu.

Vječni kalendar s trenutnim datumom

Da biste stvorili kalendar koji se automatski ažurira na temelju trenutnog datuma, možete upotrijebiti formulu poput ove u K5:

=EOMONTH(TODAY(),-1)+1

Ova formula dobiva trenutni datum s funkcijom DANAS, a zatim dobiva prvi dan tekućeg mjeseca pomoću funkcije EOMONTH. Zamijenite DANAS () bilo kojim danom da biste izgradili kalendar u drugom mjesecu. Više detalja o tome kako EOMONTH radi ovdje.

Koraci za stvaranje

  1. Sakrij linije mreže (nije obavezno)
  2. Dodavanje obruba na B5: H11 (7R x 7C)
  3. Naziv K5 "početak" i unesite datum poput "1. rujna 2018"
  4. Formula u B4 = početak
  5. Oblikujte B4 kao "mmmm yyyy"
  6. Odaberite B4: H4, postavite poravnanje na "Centriraj odabir"
  7. U rasponu B5: H5, unesite kratice dana (SMTWTFS)
  8. Formula u B6 = start-IZBOR (TJEDAN (početak), 0,1,2,3,4,5,6)
  9. Odaberite B6: H11, primijenite prilagođeni format broja "d"
  10. Formula u C6 = IF (B6 "", B6, $ H5) +1
  11. Kopirajte formulu u C6 u preostale ćelije u mreži kalendara
  12. Dodavanje pravila prethodnog / sljedećeg uvjetnog oblikovanja (vidi gornju formulu)
  13. Dodajte trenutno pravilo uvjetnog oblikovanja (pogledajte gornju formulu)
  14. Promijenite datum u K5 u drugi datum "prvog u mjesecu" za testiranje
  15. Za vječni kalendar, formula u K5 = EOMONTH (DANAS (), - 1) +1

Zanimljivi članci...