Poznámka: Tento příklad předpokládá, že datum zahájení bude poskytnuto jako první v měsíci. Níže naleznete vzorec, který dynamicky Vrátí první den aktuálního měsíce.
s rozložením mřížky, jak je znázorněno, je hlavním problémem vypočítat datum v první buňce v kalendáři (B6). To se provádí pomocí tohoto vzorce:
=start-CHOOSE(WEEKDAY(start),0,1,2,3,4,5,6)Tento vzorec zjistí neděli před prvním dnem měsíce, pomocí ZVOLTE funkci „vrátit zpět“ správný počet dní, aby předchozí neděli. Vyberte si funguje perfektně v této situaci, protože umožňuje libovolné hodnoty pro každý den v týdnu. Tuto funkci používáme k vrácení nulových dnů, kdy je první den v měsíci neděle. Další podrobnosti o tomto problému jsou uvedeny zde.
S prvním dnem založena v B6, jiné vzorce v mřížce jednoduše přírůstek předchozí datum, začátek vzorce v C6:
=IF(B6<>"",B6,$H5)+1tento vzorec testuje buňku okamžitě vlevo na hodnotu. Pokud není nalezena žádná hodnota, vytáhne hodnotu ze sloupce H v řádku výše. Poznámka: $H5 je smíšený odkaz, zamknout sloupci jako je vzorec kopírován po celém roštu. Stejný vzorec se používá ve všech buňkách kromě B6.
pravidla podmíněného formátování
kalendář používá vzorce podmíněného formátování změňte formátování na odstín předchozích a budoucích měsíců a zvýrazněte aktuální den. Obě pravidla platí pro celou mřížku. Pro předchozí a následující měsíce je vzorec:
=MONTH(B6)<>MONTH(start)Pro aktuální den, vzorec je:
=B6=TODAY()
Pro více informací, viz: Podmíněné formátování pomocí vzorce (10 příkladů)
Kalendář nadpis
názvu kalendáře – měsíc a rok – počítají se tento vzorec v buňce B4:
=startFormátován pomocí vlastní formát čísla „mmmm rrrr“. Chcete-li vycentrovat název nad kalendářem, rozsah B4:H4 má horizontální zarovnání nastaveno na „střed napříč výběrem“. Toto je lepší volba než sloučit buňky, protože nemění strukturu mřížky v listu.
Věčný kalendář s aktuálním datem
vytvořit kalendář, který se automaticky aktualizuje na základě aktuální datum, můžete použít vzorec, jako je to v K5:
=EOMONTH(TODAY(),-1)+1Tento vzorec získá aktuální datum s DNES funkci, pak dostane první den aktuálního měsíce pomocí funkce EOMONTH. Nahraďte dnes () jakýmkoli daným datem a vytvořte kalendář v jiném měsíci. Další podrobnosti o tom, jak EOMONTH funguje zde.
Kroky k vytvoření
- Skrýt mřížku (volitelné)
- Přidat ohraničení k B5:H11 (7R x 7C)
- Název K5 „start“ a zadejte datum jako „září 1, 2018“
- Vzorec v buňce B4 =
- Formát B4 jako „mmmm rrrr“
- Vyberte B4:H4, nastavit zarovnání „na Střed výběru“
- V rozmezí B5:H5, zadejte den zkratky (SMTWTFS)
- Vzorec v B6 =start-ZVOLTE(ve VŠEDNÍ den(start),0,1,2,3,4,5,6)
- Vyberte B6:H11, použít vlastní formát čísla „d“
- Vzorec C6 =KDYŽ(B6″“,B6,$H5)+1
- Zkopírujte vzorec na C6, aby zbývající buňky v kalendářním mřížce
- Přidat Předchozí/Další podmíněné formátování pravidlo (viz vzorec výše)
- Přidat Aktuální podmíněné formátování pravidlo (viz vzorec výše)
- Změnit datum v K5 na další „první měsíc“ datum testu
- věčný kalendář, formule v K5 =EOMONTH(DNES(),-1)+1