Formatowanie warunkowe w Excelu dla dat & czas: formuły i zasady

  • Udostępnij To
Michael Brown

Jeśli jesteś stałym bywalcem tego bloga, to zapewne zauważyłeś kilka artykułów obejmujących różne aspekty formatowania warunkowego w Excelu. A teraz wykorzystamy tę wiedzę i stworzymy arkusze kalkulacyjne, które rozróżniają dni powszednie i weekendy, wyróżniają święta państwowe i wyświetlają nadchodzący termin lub opóźnienie. Innymi słowy, zastosujemy formatowanie warunkowe w Excelu do dat.

Jeśli posiadasz podstawową wiedzę na temat formuł Excela, to najprawdopodobniej znasz niektóre funkcje daty i czasu, takie jak TERAZ, DZISIAJ, DATA, TYDZIEŃ, itp. W tym poradniku zamierzamy pójść o krok dalej, aby warunkowo formatować daty w Excelu w sposób, w jaki chcesz.

    Formatowanie warunkowe w Excelu dla dat (wbudowane reguły)

    Microsoft Excel udostępnia 10 opcji formatowania wybranych komórek na podstawie aktualnej daty.

    1. Aby zastosować formatowanie, wystarczy przejść do Strona główna tab> Formatowanie warunkowe> Reguły podświetlania komórek i wybrać A Data występująca .

    2. Wybierz jeden z opcje daty z listy rozwijanej w lewej części okna, w zakresie od ostatniego miesiąca do następnego.
    3. Na koniec wybierz jeden z predefiniowanych formatów lub skonfiguruj swój własny format, wybierając różne opcje na stronie Czcionka , Granica oraz Wypełnij Jeśli standardowa paleta Excela nie wystarcza, zawsze można kliknąć przycisk Więcej kolorów... przycisk.

    4. Kliknij OK i cieszyć się efektem : )

    Ten szybki i prosty sposób ma jednak dwa istotne ograniczenia - 1) działa tylko dla wybranych komórek oraz 2) format warunkowy jest zawsze stosowany na podstawie bieżącej daty.

    Formuły formatowania warunkowego w programie Excel dla dat

    Jeśli chcesz podświetlić komórki lub całe wiersze na podstawie daty w innej komórce lub utworzyć reguły dla większe odstępy czasowe (czyli więcej niż miesiąc od bieżącej daty), będziesz musiał stworzyć własną regułę formatowania warunkowego opartą na formule. Poniżej znajdziesz kilka przykładów moich ulubionych formatów warunkowych Excela dla dat.

    Jak wyróżnić weekendy w programie Excel

    Niestety, Microsoft Excel nie ma wbudowanego kalendarza podobnego do Outlooka. Cóż, zobaczmy, jak można stworzyć własny zautomatyzowany kalendarz przy dość niewielkim wysiłku.

    Podczas projektowania kalendarza w Excelu możesz użyć funkcji =DATE(rok,miesiąc,data) do wyświetlania dni tygodnia. Wystarczy wpisać rok i numer miesiąca gdzieś w arkuszu kalkulacyjnym i odwołać się do tych komórek w formule. Oczywiście mógłbyś wpisać liczby bezpośrednio do formuły, ale nie jest to zbyt efektywne podejście, ponieważ musiałbyś dostosować formułę dla każdego miesiąca.

    Poniższy zrzut ekranu demonstruje działanie funkcji DATE. Użyłem formuły =DATA($B$2,$B$1,B$4) który jest kopiowany przez rząd 5.

    Wskazówka. Jeśli chcesz wyświetlić tylko dni tygodnia, jak na powyższym obrazku, zaznacz komórki z formułą (w naszym przypadku wiersz 5), kliknij prawym przyciskiem myszy i wybierz Formatuj komórki.> Liczba> Niestandardowe Z listy rozwijanej pod Typ , wybierz albo dddd lub ddd aby pokazać odpowiednio pełne nazwy dni lub nazwy skrócone.

    Twój kalendarz w Excelu jest już prawie gotowy, trzeba tylko zmienić kolor weekendów. Oczywiście nie będziesz ręcznie kolorował komórek. Będziemy kazać Excelowi automatycznie formatować weekendy, tworząc warunkową regułę formatowania na podstawie TYGODNIOWY wzór.

    1. Rozpoczynamy od zaznaczenia w kalendarzu Excela miejsca, w którym chcemy cieniować weekendy. W naszym przypadku jest to zakres $B$4:$AE$10. Pamiętaj, aby rozpocząć zaznaczanie od znaku Kolumna z pierwszą datą - Kolumna B w tym przykładzie.
    2. Na Strona główna zakładka, kliknij Menu Formatowanie warunkowe> Nowa reguła .
    3. Utwórz nową regułę formatowania warunkowego na podstawie formuły, jak wyjaśniono w wyżej podlinkowanym przewodniku.
    4. W " Formatuj wartości, w których ta formuła jest prawdziwa" w polu wprowadź następującą formułę WEEKDAY, która określi, które komórki są sobotami i niedzielami: =WEEKDAY(B$5,2)>5
    5. Kliknij przycisk Format... i ustaw swój własny format, przełączając między Czcionka , Granica oraz Wypełnij i bawić się różnymi opcjami formatowania. Po zakończeniu kliknij OK aby wyświetlić podgląd reguły.

    Pozwólcie, że krótko wyjaśnię WEEKDAY(serial_number,[return_type]) formuła, abyś mógł szybko dostosować ją do własnych arkuszy kalkulacyjnych.

    • Na stronie numer seryjny Parametr reprezentuje datę, którą próbujesz znaleźć. Wprowadzasz odwołanie do swojej pierwszej komórki z datą, B$5 w naszym przypadku.
    • Na stronie [return_type] Parametr określa typ tygodnia (nawiasy kwadratowe oznaczają, że jest on opcjonalny). Wpisujesz 2 jako typ zwrotu dla tygodnia rozpoczynającego się od poniedziałku (1) do niedzieli (7). Pełną listę dostępnych typów zwrotów znajdziesz tutaj.
    • Na koniec piszesz>5, aby zaznaczyć tylko soboty (6) i niedziele (7).

    Poniższy zrzut ekranu demonstruje wynik w Excelu 2013 - weekendy są wyróżnione czerwonawym kolorem.

    Wskazówki:

    • Jeśli w firmie mamy niestandardowe weekendy, np. piątki i soboty, to należałoby podrasować formułę tak, aby zaczynała liczyć od niedzieli (1) i wyróżniała dni 6 (piątek) i 7 (sobota) -. TYDZIEŃ(B$5,1)>5 .
    • Jeśli tworzysz kalendarz w orientacji poziomej (landscape), użyj kolumny względnej (bez $) i wiersza bezwzględnego (z $) w odwołaniu do komórki, ponieważ powinieneś zablokować odwołanie do wiersza - w powyższym przykładzie jest to wiersz 5, więc wpisaliśmy B$5. Ale jeśli projektujesz kalendarz w orientacji pionowej, powinieneś zrobić odwrotnie, czyli użyć kolumny bezwzględnej i wiersza względnego, np. $B5, jak widać wponiższy zrzut ekranu:

    Jak wyróżnić święta w programie Excel

    Aby jeszcze bardziej ulepszyć swój kalendarz w Excelu, możesz zaciemnić również święta państwowe. Aby to zrobić, będziesz musiał wymienić święta, które chcesz podkreślić w tym samym lub innym arkuszu kalkulacyjnym.

    Na przykład, dodałem następujące święta w kolumnie A ($A$14:$A$17). Oczywiście nie wszystkie z nich są prawdziwymi świętami publicznymi, ale wystarczą do celów demonstracyjnych : )

    Znowu otwierasz Formatowanie warunkowe > Nowa zasada W przypadku świąt, będziesz używał albo MATCH lub COUNTIF funkcja:

    • =COUNTIF($A$14:$A$17,B$5)>0
    • =MATCH(B$5,$A$14:$A$17,0)

    Uwaga. Jeśli wybrałeś inny kolor dla świąt, musisz przenieść regułę dotyczącą świąt publicznych na górę listy reguł poprzez Formatowanie warunkowe> Zarządzaj regułami...

    Poniższy obraz przedstawia wynik w programie Excel 2013:

    Warunkowo formatuj komórkę, gdy wartość zostanie zmieniona na datę

    Nie jest wielkim problemem warunkowe formatowanie komórki, gdy do tej komórki lub dowolnej innej komórki w tym samym wierszu zostanie dodana data, o ile nie jest dozwolony inny typ wartości. W takim przypadku można po prostu użyć formuły do wyróżnienia pustych miejsc, jak to opisano w Formuły warunkowe Excela dla pustych i niepustych miejsc. Ale co, jeśli te komórki mają już jakieś wartości, np. tekst, i chcesz zmienićkolor tła, gdy tekst jest zmieniany na datę?

    Zadanie może brzmieć nieco zawile, ale rozwiązanie jest bardzo proste.

    1. Po pierwsze, musisz określić kod formatu swojej daty, oto kilka przykładów:
      • D1: dd-mmm-yy lub d-mmm-yy
      • D2: dd-mmm lub d-mmm
      • D3: mmm-yy
      • D4: mm/dd/rr lub m/d/rr lub m/d/rr h:mm

      Pełną listę kodów dat można znaleźć w tym artykule.

    2. Wybierz kolumnę, w której chcesz zmienić kolor komórek lub całą tabelę w przypadku, gdy chcesz wyróżnić wiersze.
    3. A teraz utwórz regułę formatowania warunkowego za pomocą formuły podobnej do tej: =CELL("format",$A2)="D1" W formule A to kolumna z datami, a D1 to format daty.

      Jeśli Twoja tabela zawiera daty w 2 lub więcej formatach, to użyj operatora OR, np. =OR(cell("format", $A2)="D1", cell("format",$A2)="D2", cell("format", $A2)="D3")

      Poniższy zrzut ekranu demonstruje wynik działania takiej reguły formatowania warunkowego dla dat.

    Jak podświetlić wiersze na podstawie określonej daty w określonej kolumnie

    Załóżmy, że masz duży arkusz kalkulacyjny programu Excel, który zawiera dwie kolumny z datami (B i C). Chcesz podświetlić każdy wiersz, który ma określoną datę, powiedzmy 13-maj-14, w kolumnie C.

    Aby zastosować formatowanie warunkowe programu Excel do określonej daty, należy znaleźć jej wartość liczbowa po pierwsze. jak zapewne wiesz, Microsoft Excel przechowuje daty jako kolejne numery seryjne, począwszy od 1 stycznia 1900 r. Tak więc 1-Jan-1900 jest przechowywany jako 1, 2-Jan-1900 jest przechowywany jako 2... a 13-May-14 jako 41772.

    Aby znaleźć numer daty, kliknij prawym przyciskiem myszy na komórkę, wybierz Formatowanie komórek> Liczba i wybrać Ogólne Zapisz numer, który widzisz i kliknij Anuluj ponieważ tak naprawdę nie chcesz zmieniać formatu daty.

    To była właściwie główna część pracy, a teraz wystarczy stworzyć regułę formatowania warunkowego dla całej tabeli za pomocą tej bardzo prostej formuły: =$C2=41772 Formuła sugeruje, że twoja tabela ma nagłówki, a wiersz 2 jest pierwszym wierszem z danymi.

    Alternatywnym sposobem jest użycie DATEVALUE formuła konwertująca datę na format liczby, w którym jest zapisana, np. =$C2=DATEVALUE("5/13/2014")

    Niezależnie od tego, której formuły użyjesz, będzie ona miała ten sam efekt:

    Warunkowo formatuj daty w Excelu na podstawie bieżącej daty

    Jak zapewne wiesz Microsoft Excel dostarcza m.in. DZISIAJ() funkcje do różnych obliczeń opartych na bieżącej dacie. Oto kilka przykładów, jak można je wykorzystać do warunkowego formatowania dat w Excelu.

    Przykład 1. Podkreśl daty równe, większe lub mniejsze od dnia dzisiejszego

    Aby warunkowo sformatować komórki lub całe wiersze na podstawie dzisiejszej daty, używasz funkcji DZIŚ w następujący sposób:

    Równie dobrze jak dziś: =$B2=TODAY()

    Większy niż dzisiaj: =$B2>TODAY()

    Mniej niż dzisiaj: =$B2

    Poniższy zrzut ekranu demonstruje powyższe zasady w akcji. Proszę zauważyć, w momencie pisania DZISIAJ był 12-czerwca-2014.

    Przykład 2. Warunkowe formatowanie dat w Excelu na podstawie kilku warunków

    W podobny sposób można użyć funkcji DZIŚ w połączeniu z innymi funkcjami Excela, aby obsłużyć bardziej złożone scenariusze. Na przykład możesz chcieć, aby formuła warunkowego formatowania daty w Excelu pokolorowała Faktura kolumna, gdy Data dostawy jest równa lub większa od dzisiejszej ALE chcesz, aby formatowanie zniknęło po wpisaniu numeru faktury.

    Do tego zadania potrzebna byłaby dodatkowa kolumna z następującym wzorem (gdzie E to Twój Dostawa kolumna i F kolumna Faktura kolumna):

    =IF(E2>=TODAY(),IF(F2="", 1, 0), 0)

    Jeśli data dostawy jest większa lub równa dacie bieżącej i w kolumnie Faktura nie ma żadnego numeru, formuła zwraca 1, w przeciwnym razie 0.

    Następnie tworzymy prostą regułę formatowania warunkowego dla Faktura kolumna z formułą =$G2=1 gdzie G jest twoją dodatkową kolumną. Oczywiście, będziesz mógł ukryć tę kolumnę później.

    Przykład 3. Podkreślenie nadchodzących terminów i opóźnień

    Załóżmy, że masz harmonogram projektu w Excelu, który zawiera listę zadań, ich daty rozpoczęcia i czasy trwania. To, czego chcesz, to aby data końcowa dla każdego zadania była obliczana automatycznie. Dodatkowym wyzwaniem jest to, że formuła powinna również uwzględniać weekendy. Na przykład, jeśli data rozpoczęcia to 13-czerwca 2014 r., a liczba dni pracy (Duration) wynosi 2, data końcowa powinna pojawić się jako 17-czerwca 2014 r,ponieważ 14-czerwca i 15-czerwca to sobota i niedziela.

    Aby to zrobić, użyjemy WORKDAY.INTL(start_data,dni,[weekend],[święta]) funkcja, a dokładniej =WORKDAY.INTL(B2,C2,1) .

    W formule wpisujemy 1 jako 3 parametr, ponieważ wskazuje on sobotę i niedzielę jako dni wolne od pracy. Możesz użyć innej wartości, jeśli Twoje weekendy są inne, powiedzmy Fri i Sat. Pełna lista wartości weekendowych jest dostępna tutaj. Opcjonalnie możesz również użyć 4 parametru [holidays], który jest zestawem dat (zakresem komórek), które powinny być wyłączone z kalendarza dni roboczych.

    I wreszcie, możesz chcieć podświetlić wiersze w zależności od tego, jak odległy jest termin. Na przykład reguły formatowania warunkowego oparte na następujących 2 formułach podświetlają odpowiednio nadchodzące i niedawne daty końcowe:

    • =AND($D2-TODAY()>=0,$D2-TODAY()<=7) - podświetlić wszystkie wiersze, w których Data końcowa (kolumna D) znajduje się w obrębie następne 7 dni Ta formuła jest naprawdę przydatna, jeśli chodzi o śledzenie nadchodzących dat wygaśnięcia lub płatności.
    • =AND(TODAY()-$D2>=0,TODAY()-$D2<=7) - podświetlić wszystkie wiersze, w których Data końcowa (kolumna D) znajduje się w obrębie ostatnie 7 dni Możesz użyć tej formuły do śledzenia ostatnich zaległych płatności i innych opóźnień.

    Oto jeszcze kilka przykładów wzorów, które można zastosować do powyższej tabeli:

    =$D2 - Podkreśla wszystkie minione daty (tj. daty mniejsze od bieżącej). Może być używany do formatowania wygasłych subskrypcji, zaległych płatności itp.

    =$D2>TODAY() - Podświetla wszystkie przyszłe daty (tj. daty większe niż bieżąca). Można go użyć do podświetlenia nadchodzących wydarzeń.

    Oczywiście, może być nieskończenie wiele wariacji powyższych formuł, w zależności od konkretnego zadania.Na przykład:

    =$D2-TODAY()>=6 - podkreśla daty, które występują w ciągu 6 lub więcej dni.

    =$D2=TODAY()-14 - podkreśla daty występujące dokładnie 2 tygodnie temu.

    Jak wyróżnić daty w ramach zakresu dat

    Jeśli masz długą listę dat w arkuszu, możesz również chcieć podświetlić komórki lub wiersze, które mieszczą się w określonym zakresie dat, tj. podświetlić wszystkie daty, które znajdują się pomiędzy dwoma podanymi datami.

    Zadanie to możesz zrealizować ponownie wykorzystując funkcję DZIŚ(), tylko będziesz musiał skonstruować nieco bardziej rozbudowane formuły, co zademonstrują poniższe przykłady.

    Formuły do podświetlania dat przeszłych

    • Więcej niż 30 dni temu: =TODAY()-$A2>30
    • Od 30 do 15 dni temu włącznie: =AND(TODAY()-$A2>=15, TODAY()-$A2<=30)
    • Mniej niż 15 dni temu: =AND(TODAY()-$A2>=1, TODAY()-$A2<15)

    Data bieżąca i wszelkie daty przyszłe nie są kolorowane.

    Formuły do wyróżniania przyszłych dat

    • Wystąpi za więcej niż 30 dni od teraz: =$A2-TODAY()>30
    • W ciągu 30 do 15 dni włącznie: =AND($A2-TODAY()>=15, $A2-TODAY()<=30)
    • Za mniej niż 15 dni: =AND($A2-TODAY()>=1, $A2-TODAY()<15)

    Data bieżąca i wszelkie daty przeszłe nie są kolorowane.

    Jak cieniować przerwy i przedziały czasowe

    W tym ostatnim przykładzie wykorzystamy jeszcze jedną funkcję daty Excela -. DATEDIF(start_data, end_data, interwał) Funkcja ta oblicza różnicę między dwoma datami na podstawie określonego przedziału czasu. Od wszystkich innych funkcji omawianych w tym poradniku różni się tym, że pozwala zignorować miesiące lub lata i obliczyć różnicę tylko między dniami lub miesiącami, w zależności od tego, co wybierzesz.

    Nie widzisz, jak to może działać dla Ciebie? Pomyśl o tym w inny sposób... Załóżmy, że masz listę urodzin członków swojej rodziny i przyjaciół. Czy chciałbyś wiedzieć, ile dni pozostało do ich kolejnych urodzin? Ponadto, ile dokładnie dni pozostało do rocznicy ślubu i innych wydarzeń, których nie chciałbyś przegapić? Łatwo!

    Potrzebny jest następujący wzór (gdzie A to twój Data kolumna):

    =DATEDIF(TODAY(), DATE((YEAR(TODAY())+1), MONTH($A2), DAY($A2)), "yd")

    Typ interwału "yd" na końcu formuły służy do zignorowania lat i obliczenia różnicy tylko dni. Pełna lista dostępnych typów interwałów znajduje się tutaj.

    Wskazówka. jeśli zdarzy Ci się zapomnieć lub źle umieścić ten skomplikowany wzór, możesz zamiast niego użyć tego prostego: =365-DATEDIF($A2,TODAY(), "yd") Daje to dokładnie takie same wyniki, należy tylko pamiętać o zastąpieniu 365 przez 366 w latach przestępnych : )

    A teraz stwórzmy regułę formatowania warunkowego w Excelu, aby zacieniować różne przerwy w różnych kolorach. W tym przypadku bardziej sensowne jest wykorzystanie skal kolorów Excela, niż tworzenie osobnej reguły dla każdego okresu.

    Poniższy zrzut ekranu demonstruje wynik w Excelu - gradientową 3-kolorową skalę z odcieniami od zielonego do czerwonego przez żółty.

    "Dni do następnych urodzin" Excel Web App

    Stworzyliśmy ten Excel Web App, aby pokazać powyższą formułę w akcji. Po prostu wprowadź swoje wydarzenia w 1. kolumnie i zmień odpowiednie daty w 2. kolumnie, aby eksperymentować z wynikiem.

    Uwaga. Aby wyświetlić osadzony zeszyt ćwiczeń, należy zezwolić na marketingowe pliki cookie.

    Jeśli jesteś ciekawy, jak tworzyć takie interaktywne arkusze Excel, sprawdź ten artykuł o tym, jak tworzyć internetowe arkusze Excel.

    Mam nadzieję, że przynajmniej jeden z omówionych w tym artykule formatów warunkowych Excela dla dat okazał się dla Ciebie przydatny. Jeśli szukasz rozwiązania jakiegoś innego zadania, to jak najbardziej zapraszamy do zamieszczenia komentarza.Dziękujemy za lekturę!

    Michael Brown jest oddanym entuzjastą technologii z pasją do upraszczania złożonych procesów za pomocą narzędzi programowych. Dzięki ponad dziesięcioletniemu doświadczeniu w branży technologicznej doskonalił swoje umiejętności w programach Microsoft Excel i Outlook, a także w Arkuszach i Dokumentach Google. Blog Michaela jest poświęcony dzieleniu się swoją wiedzą i doświadczeniem z innymi, dostarczając łatwych do zastosowania wskazówek i samouczków w celu poprawy produktywności i wydajności. Niezależnie od tego, czy jesteś doświadczonym profesjonalistą, czy początkującym, blog Michaela oferuje cenne spostrzeżenia i praktyczne porady dotyczące maksymalnego wykorzystania tych niezbędnych narzędzi programowych.