Formato condicional de Excel para datas & tempo: fórmulas e regras

  • Comparte Isto
Michael Brown

Se es un visitante habitual deste blog, probablemente teña notado algúns artigos que tratan diferentes aspectos do formato condicional de Excel. E agora aproveitaremos este coñecemento e crearemos follas de cálculo que diferencien entre días laborables e fins de semana, destaquemos os festivos e amosen un prazo ou atraso próximo. Noutras palabras, imos aplicar o formato condicional de Excel ás datas.

Se tes coñecementos básicos das fórmulas de Excel, probablemente estea familiarizado con algunhas funcións de data e hora, como AGORA, HOXE, DATA, DÍA DA SEMANA, etc. Neste tutorial, imos dar un paso máis a esta función para formatar condicionalmente as datas de Excel do xeito que queiras.

    Excel formato condicional para as datas (regras integradas)

    Microsoft Excel ofrece 10 opcións para dar formato ás celas seleccionadas en función da data actual.

    1. Para aplicar o formato, só tes que ir ao Pestana Inicio > Formato condicional > Resalte Regras de cela e selecciona Unha data que ocorre .

    2. Selecciona unha das opcións de data no menú despregable lista na parte esquerda da xanela, dende o mes pasado ata o mes seguinte.
    3. Finalmente, escolla un dos formatos predefinidos ou configure o seu formato personalizado escollendo diferentes opcións no Fonte , Borde e Encher pestanas. Se a paleta estándar de Excel nonatrasos.
    4. Aquí tes algúns exemplos de fórmulas que se poden aplicar á táboa anterior:

      =$D2 - highlights all passed dates (i.e. dates less than the current date). Can be used to format expired subscriptions, overdue payments etc.

      =$D2>TODAY() - destaca todas as datas futuras (é dicir, datas superiores á data actual). Podes usalo para resaltar eventos próximos.

      Por suposto, pode haber infinitas variacións das fórmulas anteriores, dependendo da túa tarefa particular. Por exemplo:

      =$D2-TODAY()>=6 : destaca datas que ocorren en 6 días ou máis.

      =$D2=TODAY()-14 : destaca datas que ocorreron hai exactamente 2 semanas.

      Como resaltar datas dentro dunha data intervalo

      Se tes unha longa lista de datas na túa folla de traballo, tamén podes resaltar as celas ou filas que se atopan dentro dun determinado intervalo de datas, é dicir, resaltar todas as datas que están entre dúas datas determinadas.

      Podes realizar esta tarefa usando a función TODAY() de novo. Só terás que construír fórmulas un pouco máis elaboradas como se demostra nos exemplos seguintes.

      Fórmulas para destacar datas pasadas

      • Hai máis de 30 días : =TODAY()-$A2>30
      • Hai de 30 a 15 días, incluídos: =AND(TODAY()-$A2>=15, TODAY()-$A2<=30)
      • Hai menos de 15 días: =AND(TODAY()-$A2>=1, TODAY()-$A2<15)

      A data actual e as datas futuras non están coloreadas .

      Fórmulas para destacar datas futuras

      • Produciranse dentro de máis de 30 días: =$A2-TODAY()>30
      • En 30 a 15 días, incluídos: =AND($A2-TODAY()>=15, $A2-TODAY()<=30)
      • En menos de 15 días: =AND($A2-TODAY()>=1, $A2-TODAY()<15)

      A data actual e as datas pasadas non están coloreadas.

      Comopara sombrear lagoas e intervalos de tempo

      Neste último exemplo, imos utilizar outra función de data de Excel: DATEDIF(start_date, end_date, interval) . Esta función calcula a diferenza entre dúas datas en función do intervalo especificado. Diferénciase de todas as outras funcións que comentamos neste titorial na forma en que che permite ignorar meses ou anos e calcular a diferenza só entre días ou meses, o que elixas.

      Non vexas como isto fai. podería funcionar para ti? Pénsao doutro xeito... Supoña que tes unha lista de aniversarios dos teus familiares e amigos. Queres saber cantos días quedan para o seu próximo aniversario? Ademais, cantos días quedan exactamente para o teu aniversario de voda e outros eventos que non te gustaría perder? Facilmente!

      A fórmula que precisa é esta (onde A é a súa columna Data ):

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

      O tipo de intervalo "yd" no O final da fórmula úsase para ignorar os anos e calcular só a diferenza entre os días. Para obter a lista completa dos tipos de intervalos dispoñibles, consulte aquí.

      Consello. Se esqueces ou estragas esa fórmula complexa, podes usar esta sinxela: =365-DATEDIF($A2,TODAY(),"yd") . Produce exactamente os mesmos resultados, só lembra substituír 365 por 366 nos anos bisestos : )

      E agora imos crear un condicional de Excel regra de formato para sombrear diferentes ocos en diferentes cores. Neste caso, ten máis sentido utilizarEscalas de cores de Excel en lugar de crear unha regra separada para cada período.

      A captura de pantalla que aparece a continuación mostra o resultado en Excel: unha escala degradada de 3 cores con tons de verde a vermello pasando por amarelo.

      "Días ata o próximo aniversario" Excel Web App

      Creamos esta Excel Web App para mostrarche a fórmula anterior en acción. Só tes que introducir os teus eventos na 1a columna e cambiar as datas correspondentes na 2a columna para probar co resultado.

      Nota. Para ver o libro de traballo incorporado, permite cookies de mercadotecnia.

      Se tes curiosidade por saber como crear follas de cálculo de Excel interactivas, consulta este artigo sobre como facer follas de cálculo de Excel baseadas na web.

      Agardamos que polo menos un dos formatos condicionais de Excel para as datas que se comentan neste artigo che resultou útil. Se estás a buscar unha solución para algunha tarefa diferente, podes publicar un comentario. Grazas por ler!

      é suficiente, sempre podes facer clic no botón Máis cores... .

    5. Fai clic en Aceptar e goza do resultado! : )

    Non obstante, esta forma rápida e sinxela ten dúas limitacións significativas: 1) só funciona para as celas seleccionadas e 2) o formato condicional sempre se aplica en función na data actual.

    Fórmulas de formato condicional de Excel para as datas

    Se queres resaltar celas ou filas enteiras baseadas nunha data noutra cela ou crear regras para intervalos de tempo maiores (é dicir, máis dun mes desde a data actual), terás que crear a túa propia regra de formato condicional baseada nunha fórmula. A continuación atoparás algúns exemplos dos meus formatos condicionais de Excel favoritos para as datas.

    Como destacar os fins de semana en Excel

    Lamentablemente, Microsoft Excel non ten un calendario integrado similar ao de Outlook. Ben, vexamos como podes crear o teu propio calendario automatizado sen esforzo.

    Ao deseñar o teu calendario de Excel, podes utilizar a función =DATE(ano,mes,data) para mostrar os días da semana. . Simplemente introduce o ano e o número do mes nalgún lugar da túa folla de cálculo e fai referencia a esas celas na fórmula. Por suposto, podes escribir os números directamente na fórmula, pero este non é un enfoque moi eficiente porque terías que axustar a fórmula para cada mes.

    A seguinte captura de pantalla móstrasea función DATE en acción. Usei a fórmula =DATE($B$2,$B$1,B$4) que se copia na fila 5.

    Consello. Se queres mostrar só os días da semana como ves na imaxe de arriba, selecciona as celas coa fórmula (fila 5 no noso caso), fai clic co botón dereito e escolla Formatar celas...> Número > Personalizado . Na lista despregable de Tipo , seleccione dddd ou ddd para mostrar os nomes de día completo ou os nomes abreviados, respectivamente.

    O teu calendario de Excel está case feito e só tes que cambiar a cor dos fins de semana. Por suposto, non vai colorear as celas manualmente. Teremos formato de Excel automaticamente os fins de semana creando unha regra de formato condicional baseada na fórmula WEEKDAY .

    1. Comeza seleccionando o calendario de Excel onde queres sombrear as fins de semana. . No noso caso, é o rango $B$4:$AE$10. Asegúrese de iniciar a selección coa 1ª columna de data - Columna B neste exemplo.
    2. Na pestana Inicio , faga clic en Menú Formato condicional > Nova regra .
    3. Cree unha nova regra de formato condicional baseada nunha fórmula como se explica na guía ligada anterior.
    4. No " Formato de valores onde esta fórmula sexa verdadeira" , introduza a seguinte fórmula de DÍA DA SEMANA que determinará que celas son sábados e domingos: =WEEKDAY(B$5,2)>5
    5. Fai clic no botón Formato... e configura o teu formato personalizado cambiandoentre as pestanas Tipo de letra , Borde e Encher e xoga con diferentes opcións de formato. Cando remate, fai clic no botón Aceptar para ver a regra.

    Agora, déixame explicar brevemente a fórmula WEEKDAY(serial_number,[return_type]) para que poidas rapidamente axústao para as túas propias follas de cálculo.

    • O parámetro serial_number representa a data na que estás tentando atopar. Introduces unha referencia á túa primeira cela cunha data, B$5 no noso caso.
    • O parámetro [return_type] determina o tipo de semana (os corchetes implican que é opcional). Introduza 2 como tipo de devolución durante unha semana dende o luns (1) ata o domingo (7). Podes atopar a lista completa dos tipos de devolución dispoñibles aquí.
    • Finalmente, escribe >5 para destacar só os sábados (6) e os domingos (7).

    A captura de pantalla que aparece a continuación demostra o resultado en Excel 2013: os fins de semana resáltanse na cor avermellada.

    Consellos:

    • Se ter fins de semana non estándar na túa empresa, p. ex. Os venres e sábados, terás que axustar a fórmula para que comece a contar a partir do domingo (1) e resaltar os días 6 (venres) e 7 (sábado) - WEEKDAY(B$5,1)>5 .
    • Se estás a crear un horizontal ( horizontal), use unha columna relativa (sen $) e unha fila absoluta (con $) nunha referencia de cela porque debería bloquear a referencia da fila; no exemplo anterior é a fila 5, polo que introducimos B$5. Pero se estás a deseñar uncalendario en orientación vertical, debes facer o contrario, é dicir, usar unha columna absoluta e unha fila relativa, p. $B5 como podes ver na seguinte captura de pantalla:

    Como destacar as vacacións en Excel

    Para mellorar aínda máis o teu calendario de Excel, podes sombra tamén os festivos. Para iso, terás que enumerar os festivos que queres destacar na mesma folla de cálculo ou noutra.

    Por exemplo, engadín os seguintes festivos na columna A ($A$14:$A$17) ). Por suposto, non todos son festivos reais, pero si o farán con fins de demostración : )

    De novo, abre Formato condicional > Nova regra . No caso das vacacións, utilizará a función COINCIR ou CONTARSE :

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

    Nota. Se escolleches unha cor diferente para os festivos, debes mover a regra de festivos á parte superior da lista de regras mediante Formato condicional > Xestionar regras...

    A seguinte imaxe mostra o resultado en Excel 2013:

    Formato condicionalmente unha cela cando se cambia un valor a unha data

    Non é un gran problema formatar condicionalmente unha cela cando se engade unha data a esa cela ou a calquera outra cela da mesma fila, sempre que non se permita ningún outro tipo de valor. Neste caso, pode simplemente usar unha fórmula para resaltar os non espazos en branco, como se describe nas fórmulas condicionais de Excel paraen branco e non en branco. Pero que pasa se esas celas xa teñen algúns valores, por exemplo. texto e queres cambiar a cor de fondo cando o texto se cambia a unha data?

    A tarefa pode parecer un pouco complicada, pero a solución é moi sinxela.

    1. En primeiro lugar. , debes determinar o código de formato da túa data. Aquí tes só algúns exemplos:
      • D1: dd-mmm-aa ou d-mmm-aa
      • D2: dd-mmm ou d-mmm
      • D3: mmm -aa
      • D4: mm/dd/aa ou m/d/aa ou m/d/aa h:mm

      Podes atopar a lista completa de códigos de data neste artigo.

    2. Seleccione unha columna na que quere cambiar a cor das celas ou toda a táboa no caso de que queira resaltar as filas.
    3. E agora cree unha regra de formato condicional usando un fórmula similar a esta: =CELL("format",$A2)="D1" . Na fórmula, A é a columna con datas e D1 é o formato de data.

      Se a súa táboa contén datas en 2 ou máis formatos, use o operador OR, p. ex. =OR(cell("format", $A2)="D1", cell("format",$A2)="D2", cell("format", $A2)="D3")

      A seguinte captura de pantalla mostra o resultado desta regra de formato condicional para as datas.

    Como resaltar filas en función dun determinado data nunha determinada columna

    Supoña que tes unha folla de cálculo de Excel grande que contén dúas columnas de data (B e C). Quere resaltar todas as filas que teñan unha data determinada, por exemplo 13-maio-14, na columna C.

    Para aplicar o formato condicional de Excel a unha data determinada, cómpre atopar o seu valor numérico primeiro. Como probablementesabe, Microsoft Excel almacena as datas como números de serie secuenciais, a partir do 1 de xaneiro de 1900. Así, o 1 de xaneiro de 1900 gárdase como 1, o 2 de xaneiro de 1900 gárdase como 2... e o 13 de maio de 14 como 41772.

    Para atopar o número da data, faga clic co botón dereito na cela, seleccione Formatar celas > Número e escolla o formato Xeneral . Anota o número que ves e fai clic en Cancelar porque realmente non queres cambiar o formato da data.

    En realidade, esa foi a maior parte do funciona e agora só necesitas crear unha regra de formato condicional para toda a táboa con esta fórmula moi sinxela: =$C2=41772 . A fórmula implica que a túa táboa ten cabeceiras e que a fila 2 é a túa primeira fila con datos.

    Unha alternativa O xeito é usar a fórmula DATEVALUE que converte a data ao formato numérico no que está almacenada, por exemplo. =$C2=DATEVALUE("5/13/2014")

    Calquera que sexa a fórmula que uses, terá o mesmo efecto:

    Formato condicionalmente as datas en Excel en función da data actual

    Como probablemente sabe Microsoft Excel ofrece as funcións TODAY() para varios cálculos baseados na data actual. Aquí tes só algúns exemplos de como podes usalo para dar formato condicional ás datas en Excel.

    Exemplo 1. Resalte datas iguais, maiores ou menores que hoxe

    Para dar formato condicional ás celas ou filas enteiras baseadas na data de hoxe, usa a función HOXE do seguinte xeito:

    Igual a hoxe: =$B2=TODAY()

    Maior que hoxe: =$B2>TODAY()

    Menos que hoxe: =$B2

    A seguinte captura de pantalla mostra as regras anteriores en acción. Teña en conta que no momento de escribir HOXE foi o 12 de xuño de 2014.

    Exemplo 2. Formatear condicionalmente as datas en Excel en función de varias condicións

    En de xeito similar, pode usar a función HOXE en combinación con outras funcións de Excel para xestionar escenarios máis complexos. Por exemplo, pode querer que a súa fórmula de data de formato condicional de Excel coloree a columna Factura cando a Data de entrega sexa igual ou superior a hoxe PERO quere que o formato desapareza cando introduza o número de factura.

    Para esta tarefa, necesitaría unha columna adicional coa seguinte fórmula (onde E é a súa columna Entrega e F a columna Factura ):

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

    Se a data de entrega é maior ou igual á data actual e non hai ningún número na columna Factura, a fórmula devolve 1, se non, é 0.

    Despois crea unha regra de formato condicional sinxela para a columna Factura coa fórmula =$G2=1 onde G é a túa columna adicional. Por suposto, poderás ocultar esta columna máis tarde.

    Exemplo 3. Destaque as próximas datas e atrasos

    Supoña que tes unha programación do proxecto en Excel que enumera as tarefas, as súas datas de inicio e duración. O que queres é ter o finaldata para cada tarefa calculada automaticamente. Un reto adicional é que a fórmula debería considerar tamén as fins de semana. Por exemplo, se a data de inicio é o 13 de xuño de 2014 e o número de días de traballo (Duración) é 2, a data de finalización debería ser o 17 de xuño de 2014, porque o 14 de xuño e o 15 de xuño son sábado e domingo. .

    Para iso, utilizaremos a función WORKDAY.INTL(start_date,days,[weekend],[holidays]) , máis precisamente =WORKDAY.INTL(B2,C2,1) .

    Na fórmula, introducimos 1 como 3o parámetro xa que indica sábado e domingo como festivos. Podes usar outro valor se os fins de semana son diferentes, por exemplo, ven e sábado. A lista completa dos valores da fin de semana está dispoñible aquí. Opcionalmente, tamén pode usar o cuarto parámetro [vacacións], que é un conxunto de datas (rango de celas) que se deben excluír do calendario de días laborables.

    E, finalmente, pode querer destacar as filas dependendo sobre o lonxe que está o prazo. Por exemplo, as regras de formato condicional baseadas nas dúas fórmulas seguintes resaltan as datas de finalización próximas e recentes, respectivamente:

    • =AND($D2-TODAY()>=0,$D2-TODAY()<=7) : resalta todas as filas onde a Data de finalización (columna D) está dentro do próximos 7 días . Esta fórmula é moi útil cando se trata de realizar un seguimento das próximas datas de caducidade ou pagos.
    • =AND(TODAY()-$D2>=0,TODAY()-$D2<=7) : resalta todas as filas onde a Data de finalización (columna D) está dentro dos últimos 7 días . Podes usar esta fórmula para rastrexar os últimos pagos atrasados ​​e outros

    Michael Brown é un entusiasta da tecnoloxía dedicada á súa paixón por simplificar procesos complexos mediante ferramentas de software. Con máis dunha década de experiencia na industria tecnolóxica, perfeccionou as súas habilidades en Microsoft Excel e Outlook, así como en Follas de cálculo e Documentos de Google. O blog de Michael está dedicado a compartir o seu coñecemento e experiencia con outros, proporcionando consellos e titoriais fáciles de seguir para mellorar a produtividade e a eficiencia. Tanto se es un profesional experimentado como un principiante, o blog de Michael ofrece valiosas ideas e consellos prácticos para sacar o máximo proveito destas ferramentas de software esenciais.