Formatarea condiționată Excel pentru date șiamp; timp: formule și reguli

  • Imparte Asta
Michael Brown

Dacă sunteți un vizitator regulat al acestui blog, probabil ați observat câteva articole care acoperă diferite aspecte ale formatelor condiționale Excel. Și acum vom valorifica aceste cunoștințe și vom crea foi de calcul care să facă diferența între zilele săptămânii și weekend-uri, să evidențieze sărbătorile legale și să afișeze un termen limită sau o întârziere viitoare. Cu alte cuvinte, vom aplica formatarea condiționată Excel la date.

Dacă aveți cunoștințe de bază despre formulele Excel, atunci cel mai probabil sunteți familiarizați cu unele dintre funcțiile de dată și oră, cum ar fi NOW, TODAY, DATE, WEEKDAY etc. În acest tutorial, vom face un pas mai departe cu această funcționalitate pentru a formatarea condiționată a datelor Excel în modul în care doriți.

    Formatare condiționată Excel pentru date (reguli încorporate)

    Microsoft Excel oferă 10 opțiuni pentru a formata celulele selectate pe baza datei curente.

    1. Pentru a aplica formatarea, pur și simplu mergeți la fereastra Acasă tab> Formatare condiționată> Reguli de evidențiere a celulelor și selectați O dată care are loc .

    2. Selectați unul dintre opțiuni de dată din lista derulantă din partea stângă a ferestrei, de la luna trecută până la luna următoare.
    3. În cele din urmă, alegeți unul dintre formatele predefinite sau configurați formatul dvs. personalizat alegând diferite opțiuni de pe ecranul Font , Frontieră și Umpleți Dacă paleta standard Excel nu este suficientă, puteți oricând să faceți clic pe butonul Mai multe culori... buton.

    4. Faceți clic pe OK și bucurați-vă de rezultat! : )

    Cu toate acestea, această modalitate rapidă și simplă are două limitări semnificative - 1) funcționează numai pentru celulele selectate și 2) formatul condițional se aplică întotdeauna pe baza datei curente.

    Formule de formatare condiționată Excel pentru date

    Dacă doriți să evidențiați celule sau rânduri întregi pe baza unei date din altă celulă , sau creați reguli pentru intervale de timp mai mari (adică mai mult de o lună de la data curentă), va trebui să vă creați propria regulă de formatare condiționată bazată pe o formulă. Mai jos veți găsi câteva exemple de formate condiționate Excel preferate pentru date.

    Cum se evidențiază weekend-urile în Excel

    Din păcate, Microsoft Excel nu are un calendar încorporat similar cu cel din Outlook. Ei bine, să vedem cum vă puteți crea propriul calendar automatizat cu destul de puțin efort.

    Atunci când vă proiectați calendarul Excel, puteți utiliza funcția =DATE(year,month,date) pentru a afișa zilele săptămânii. Pur și simplu introduceți anul și numărul lunii undeva în foaia de calcul și faceți referire la aceste celule în formulă. Desigur, ați putea introduce numerele direct în formulă, dar aceasta nu este o abordare foarte eficientă, deoarece ar trebui să ajustați formula pentru fiecare lună.

    Captura de ecran de mai jos demonstrează funcția DATE în acțiune. Am folosit formula =DATE($B$2,$B$1,B$4) care este copiat pe rândul 5.

    Sfat. Dacă doriți să afișați doar zilele săptămânii, așa cum vedeți în imaginea de mai sus, selectați celulele cu formula (rândul 5 în cazul nostru), faceți clic dreapta și alegeți Format Cells.> Number> Personalizat Din lista derulantă de sub Tip , selectați fie dddd sau ddd pentru a afișa denumirile complete ale zilelor sau, respectiv, denumirile prescurtate.

    Calendarul Excel este aproape gata și trebuie doar să schimbați culoarea weekendurilor. Firește, nu veți colora celulele manual. Vom face ca Excel să formateze automat weekendurile prin crearea unei reguli de formatare condiționată bazată pe WEEKDAY formula.

    1. Începeți prin a selecta calendarul Excel în care doriți să umbriți weekendurile. În cazul nostru, este vorba de intervalul $B$4:$AE$10. Asigurați-vă că începeți selecția cu semnul Prima coloană de date - Coloana B în acest exemplu.
    2. Pe Acasă fila, faceți clic pe Meniul Formatare condiționată> Regulă nouă .
    3. Creați o nouă regulă de formatare condiționată bazată pe o formulă, așa cum se explică în ghidul de mai sus.
    4. În " Formatați valorile în care această formulă este adevărată" introduceți următoarea formulă WEEKDAY care va determina care celule sunt sâmbătă și duminică: =WEEKDAY(B$5,2)>5
    5. Faceți clic pe butonul Format... și setați formatul personalizat, trecând de la butonul Font , Frontieră și Umpleți și să vă jucați cu diferite opțiuni de formatare. Când ați terminat, faceți clic pe butonul OK pentru a previzualiza regula.

    Acum, dați-mi voie să vă explic pe scurt WEEKDAY(număr_de_serie,[tip_retur]) astfel încât să o puteți ajusta rapid pentru propriile foi de calcul.

    • The număr_de_serie Parametrul reprezintă data pe care încercați să o găsiți. Introduceți o referință la prima celulă cu o dată, B$5 în cazul nostru.
    • The [return_type] parametrul determină tipul de săptămână (parantezele pătrate implică faptul că este opțional). Introduceți 2 ca tip de retur pentru o săptămână care începe de luni (1) până duminică (7). Puteți găsi lista completă a tipurilor de retur disponibile aici.
    • În cele din urmă, scrieți>5 pentru a evidenția doar sâmbetele (6) și duminicile (7).

    Captura de ecran de mai jos demonstrează rezultatul în Excel 2013 - weekend-urile sunt evidențiate în culoarea roșiatică.

    Sfaturi:

    • În cazul în care în cadrul companiei dumneavoastră există weekenduri care nu sunt standard, de exemplu, vineri și sâmbătă, atunci va trebui să modificați formula astfel încât să înceapă să numere de duminică (1) și să evidențieze zilele 6 (vineri) și 7 (sâmbătă). WEEKDAY(B$5,1)>5 .
    • Dacă creați un calendar orizontal (peisaj), utilizați o coloană relativă (fără $) și un rând absolut (cu $) într-o referință de celulă, deoarece ar trebui să blocați referința rândului - în exemplul de mai sus este rândul 5, deci am introdus B$5. Dar dacă proiectați un calendar în orientare verticală, ar trebui să faceți opusul, adică să utilizați o coloană absolută și un rând relativ, de exemplu $B5, așa cum puteți vedea încaptura de ecran de mai jos:

    Cum se evidențiază sărbătorile în Excel

    Pentru a vă îmbunătăți și mai mult calendarul Excel, puteți să nuanțați și sărbătorile legale. Pentru a face acest lucru, va trebui să enumerați sărbătorile pe care doriți să le evidențiați în aceeași foaie de calcul sau într-o altă foaie de calcul.

    De exemplu, am adăugat următoarele sărbători în coloana A ($A$14:$A$17). Desigur, nu toate sunt sărbători legale reale, dar sunt suficiente în scop demonstrativ : )

    Din nou, deschideți Formatarea condiționată > Regula nouă În cazul sărbătorilor, veți folosi fie MATCH sau COUNTIF funcție:

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

    Notă. Dacă ați ales o altă culoare pentru sărbători, trebuie să mutați regula privind sărbătorile legale în partea de sus a listei de reguli prin intermediul Formatare condiționată> Gestionarea regulilor...

    Următoarea imagine prezintă rezultatul în Excel 2013:

    Formatarea condiționată a unei celule atunci când o valoare este schimbată într-o dată

    Nu este o mare problemă să formatați condiționat o celulă atunci când o dată este adăugată în acea celulă sau în orice altă celulă din același rând, atâta timp cât nu este permis niciun alt tip de valoare. În acest caz, ați putea folosi pur și simplu o formulă pentru a evidenția spațiile libere, așa cum este descris în Formule condiționate Excel pentru spații libere și spații libere. Dar ce se întâmplă dacă acele celule au deja anumite valori, de exemplu, text, și doriți să schimbațiculoarea de fundal atunci când textul este transformat într-o dată?

    Sarcina poate părea un pic complicată, dar soluția este foarte simplă.

    1. În primul rând, trebuie să determinați codul de format al datei dvs. Iată câteva exemple:
      • D1: dd-mmm-yy sau d-mmm-yy
      • D2: dd-mmm sau d-mmm
      • D3: mmm-yy
      • D4: mm/dd/aa sau m/d/aa sau m/d/aa h:mm

      Puteți găsi lista completă a codurilor de date în acest articol.

    2. Selectați o coloană în care doriți să schimbați culoarea celulelor sau întregul tabel în cazul în care doriți să evidențiați rândurile.
    3. Și acum creați o regulă de formatare condiționată folosind o formulă similară cu aceasta: =CELL("format",$A2)="D1" În formulă, A este coloana cu date, iar D1 este formatul datei.

      Dacă tabelul dvs. conține date în 2 sau mai multe formate, utilizați operatorul OR, de exemplu. =OR(cell("format", $A2)="D1", cell("format",$A2)="D2", cell("format", $A2)="D3")

      Captura de ecran de mai jos demonstrează rezultatul unei astfel de reguli de formatare condiționată pentru date.

    Cum se evidențiază rândurile în funcție de o anumită dată într-o anumită coloană

    Să presupunem că aveți o foaie de calcul Excel de mari dimensiuni care conține două coloane de date (B și C). Doriți să evidențiați fiecare rând care are o anumită dată, de exemplu, 13-Mai-14, în coloana C.

    Pentru a aplica formatarea condiționată Excel la o anumită dată, trebuie să găsiți formatarea sa valoare numerică După cum probabil știți, Microsoft Excel stochează datele ca numere de serie secvențiale, începând cu 1 ianuarie 1900. Astfel, 1 ianuarie 1900 este stocat ca 1, 2 ianuarie 1900 este stocat ca 2... și 13 mai 14 ca 41772.

    Pentru a găsi numărul datei, faceți clic dreapta pe celulă, selectați Format Cells> Număr și alegeți General Scrieți numărul pe care îl vedeți și faceți clic pe Anulează pentru că nu doriți cu adevărat să modificați formatul datei.

    Aceasta a fost, de fapt, cea mai mare parte a lucrului și acum trebuie doar să creați o regulă de formatare condiționată pentru întregul tabel cu această formulă foarte simplă: =$C2=41772 Formula implică faptul că tabelul dvs. are anteturi și că rândul 2 este primul rând cu date.

    O modalitate alternativă este de a folosi opțiunea DATEVALUE formulă care convertește data în formatul numeric în care este stocată, de exemplu. =$C2=DATEVALUE("5/13/2014")

    Oricare ar fi formula pe care o folosiți, aceasta va avea același efect:

    Formatarea condiționată a datelor în Excel pe baza datei curente

    După cum probabil știți, Microsoft Excel oferă AZI() pentru diverse calcule bazate pe data curentă. Iată doar câteva exemple de utilizare pentru formatarea condiționată a datelor în Excel.

    Exemplul 1. Evidențiați datele egale, mai mari sau mai mici decât ziua de azi

    Pentru a formata condiționat celule sau rânduri întregi pe baza datei de astăzi, utilizați funcția TODAY după cum urmează:

    La fel ca și astăzi: =$B2=TODAY()

    Mai mare decât astăzi: =$B2>TODAY()

    Mai puțin decât astăzi: =$B2

    Captura de ecran de mai jos demonstrează regulile de mai sus în acțiune. Vă rugăm să rețineți că, la momentul scrierii acestui articol, AZI era 12-iun-2014.

    Exemplul 2. Formatarea condiționată a datelor în Excel pe baza mai multor condiții

    În mod similar, puteți utiliza funcția TODAY în combinație cu alte funcții Excel pentru a gestiona scenarii mai complexe. De exemplu, este posibil să doriți ca formula dvs. de formatare condiționată a datei din Excel să coloreze Factura atunci când coloana Data de livrare este egală sau mai mare decât astăzi, DAR doriți ca formatarea să dispară atunci când introduceți numărul facturii.

    Pentru această sarcină, veți avea nevoie de o coloană suplimentară cu următoarea formulă (unde E este Livrare și F coloana Factura coloană):

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

    Dacă data livrării este mai mare sau egală cu data curentă și nu există niciun număr în coloana Factură, formula returnează 1, altfel 0.

    După aceea, creați o regulă simplă de formatare condiționată pentru Factura coloana cu formula =$G2=1 unde G este coloana suplimentară. Desigur, veți putea ascunde această coloană ulterior.

    Exemplul 3. Evidențiați datele și întârzierile viitoare

    Să presupunem că aveți un program de proiect în Excel care enumeră sarcinile, datele de început și duratele acestora. Ceea ce doriți este ca data de sfârșit pentru fiecare sarcină să fie calculată automat. O provocare suplimentară este că formula trebuie să ia în considerare și weekend-urile. De exemplu, dacă data de început este 13-iun-2014 și numărul de zile de lucru (Durata) este 2, data de sfârșit trebuie să fie 17-iun-2014,deoarece 14-iun și 15-iun sunt sâmbătă și duminică.

    Pentru a face acest lucru, vom folosi WORKDAY.INTL(start_date,days,[weekend],[holidays]) funcția, mai precis =WORKDAY.INTL(B2,C2,1) .

    În formulă, introducem 1 ca al 3-lea parametru, deoarece acesta indică sâmbăta și duminica drept zile de sărbătoare. Puteți utiliza o altă valoare dacă weekendurile dvs. sunt diferite, de exemplu, vineri și sâmbătă. Lista completă a valorilor de weekend este disponibilă aici. Opțional, puteți utiliza și al 4-lea parametru [holidays], care este un set de date (interval de celule) care trebuie excluse din calendarul zilelor lucrătoare.

    Și, în cele din urmă, este posibil să doriți să evidențiați rândurile în funcție de cât de departe este data limită. De exemplu, regulile de formatare condiționată bazate pe următoarele 2 formule evidențiază datele finale viitoare și, respectiv, recente:

    • =AND($D2-TODAY()>=0,$D2-TODAY()<=7) - evidențiați toate rândurile în care data de sfârșit (coloana D) se află în intervalul următoarele 7 zile Această formulă este foarte utilă atunci când vine vorba de urmărirea următoarelor date de expirare sau plăți.
    • =AND(TODAY()-$D2>=0,TODAY()-$D2<=7) - evidențiați toate rândurile în care data de sfârșit (coloana D) se află în intervalul ultimele 7 zile Puteți utiliza această formulă pentru a urmări ultimele plăți întârziate și alte întârzieri.

    Iată alte câteva exemple de formule care pot fi aplicate la tabelul de mai sus:

    =$D2 - evidențiază toate datele depășite (adică datele mai mici decât data curentă). Poate fi utilizat pentru a formata abonamente expirate, plăți întârziate etc.

    =$D2>TODAY() - evidențiază toate datele viitoare (adică datele mai mari decât data curentă). Puteți să o utilizați pentru a evidenția evenimentele viitoare.

    Desigur, pot exista infinite variante ale formulelor de mai sus, în funcție de sarcina dvs. particulară. De exemplu:

    =$D2-TODAY()>=6 - evidențiază datele care au loc în 6 sau mai multe zile.

    =$D2=TODAY()-14 - evidențiază datele care au avut loc cu exact 2 săptămâni în urmă.

    Cum se evidențiază datele dintr-un interval de date

    Dacă aveți o listă lungă de date în foaia de calcul, este posibil să doriți, de asemenea, să evidențiați celulele sau rândurile care se încadrează într-un anumit interval de date, de exemplu, să evidențiați toate datele care se află între două date date date.

    Puteți îndeplini această sarcină utilizând din nou funcția TODAY(). Va trebui doar să construiți formule ceva mai elaborate, așa cum se demonstrează în exemplele de mai jos.

    Formule pentru a evidenția datele trecute

    • Mai mult de 30 de zile în urmă: =TODAY()-$A2>30
    • Între 30 și 15 zile în urmă, inclusiv: =AND(TODAY()-$A2>=15, TODAY()-$A2<=30)
    • Cu mai puțin de 15 zile în urmă: =AND(TODAY()-$A2>=1, TODAY()-$A2<15)

    Data curentă și orice dată viitoare nu sunt colorate.

    Formule pentru a evidenția datele viitoare

    • Va avea loc în mai mult de 30 de zile de acum încolo: =$A2-TODAY()>30
    • Între 30 și 15 zile, inclusiv: =AND($A2-TODAY()>=15, $A2-TODAY()<=30)
    • În mai puțin de 15 zile: =AND($A2-TODAY()>=1, $A2-TODAY()<15)

    Data curentă și orice dată anterioară nu sunt colorate.

    Cum se umbresc golurile și intervalele de timp

    În acest ultim exemplu, vom utiliza o altă funcție de dată Excel - DATEDIF(start_date, end_date, interval) Această funcție calculează diferența dintre două date pe baza intervalului specificat. Ea diferă de toate celelalte funcții pe care le-am discutat în acest tutorial prin faptul că vă permite să ignorați lunile sau anii și să calculați diferența doar între zile sau luni, la alegere.

    Nu vedeți cum ar putea funcționa pentru dvs.? Gândiți-vă în alt mod... Să presupunem că aveți o listă cu zilele de naștere ale membrilor familiei și prietenilor dvs. Ați dori să știți câte zile mai sunt până la următoarea lor zi de naștere? Mai mult, câte zile mai sunt exact până la aniversarea nunții dvs. și alte evenimente pe care nu ați dori să le ratați? Ușor!

    Formula de care aveți nevoie este următoarea (unde A este Data coloană):

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

    Tipul de interval "yd" de la sfârșitul formulei este utilizat pentru a ignora anii și a calcula doar diferența dintre zile. Pentru lista completă a tipurilor de intervale disponibile, consultați aici.

    Sfat: Dacă se întâmplă să uitați sau să rătăciți formula complexă, puteți folosi în schimb această formulă simplă: =365-DATEDIF($A2,TODAY(), "yd") Se obțin exact aceleași rezultate, dar nu uitați să înlocuiți 365 cu 366 în anii bisecți : )

    Și acum să creăm o regulă de formatare condiționată Excel pentru a nuanța diferite lacune în culori diferite. În acest caz, este mai logic să folosim scalele de culori Excel decât să creăm o regulă separată pentru fiecare perioadă.

    Captura de ecran de mai jos demonstrează rezultatul în Excel - o scală de 3 culori cu gradient, cu nuanțe de la verde la roșu și galben.

    "Zilele până la următoarea zi de naștere" Excel Web App

    Am creat această aplicație web Excel pentru a vă arăta formula de mai sus în acțiune. Introduceți evenimentele în prima coloană și modificați datele corespunzătoare în a doua coloană pentru a experimenta rezultatul.

    Notă: Pentru a vizualiza caietul de lucru încorporat, vă rugăm să permiteți cookie-urile de marketing.

    Dacă sunteți curioși să aflați cum să creați astfel de foi de calcul Excel interactive, consultați acest articol despre cum să creați foi de calcul Excel bazate pe web.

    Sperăm că cel puțin unul dintre formatele condiționale Excel pentru date discutate în acest articol s-a dovedit a fi util pentru dvs. Dacă sunteți în căutarea unei soluții pentru o sarcină diferită, sunteți binevenit să postați un comentariu. Vă mulțumim pentru lectură!

    Michael Brown este un pasionat de tehnologie dedicat, cu o pasiune pentru simplificarea proceselor complexe folosind instrumente software. Cu mai mult de un deceniu de experiență în industria tehnologiei, el și-a perfecționat abilitățile în Microsoft Excel și Outlook, precum și în Google Sheets și Docs. Blogul lui Michael este dedicat împărtășirii cunoștințelor și experienței sale cu alții, oferind sfaturi și tutoriale ușor de urmat pentru îmbunătățirea productivității și eficienței. Indiferent dacă sunteți un profesionist experimentat sau un începător, blogul lui Michael oferă informații valoroase și sfaturi practice pentru a profita la maximum de aceste instrumente software esențiale.