Com ordenar per data a Excel: cronològicament, per mes, ordenació automàtica

  • Comparteix Això
Michael Brown

En aquest article, veurem diferents maneres d'ordenar les dates a Excel. Aprendràs a organitzar ràpidament les dates en ordre cronològic, a ordenar per mes ignorant els anys, a ordenar els aniversaris per mes i dia i a ordenar automàticament per data quan introduïu valors nous.

Excel incorporat. Les opcions d'ordenació són eines potents i efectives, però no sempre funcionen correctament quan es tracta d'ordenar les dates. Aquest tutorial us ensenyarà alguns trucs útils per organitzar Excel per data d'una manera significativa sense embrutar les vostres dades.

    Com ordenar les dates en ordre cronològic

    Ordenar dates en ordre cronològic a Excel és molt fàcil. Només heu d'utilitzar l'opció estàndard Ordenació ascendent :

    1. Seleccioneu les dates que voleu ordenar cronològicament.
    2. A la pestanya Inici , al grup Formats , feu clic a Ordena i amp; Filtreu i seleccioneu Ordena el més antic al més nou . Alternativament, podeu utilitzar l'opció A-Z a la pestanya Dades , a la pestanya Ordenar i amp; Filtra grup.

    Com ordenar per data a Excel

    Les opcions d'ordenació d'Excel també es poden utilitzar per reordenar el taula sencera, no només una columna. Per ordenar els registres per data mantenint les files intactes, el punt clau és ampliar la selecció quan se us demani.

    A continuació es mostren els passos detallats per ordenar les dades a Excel per data:

    1. A el full de càlcul, seleccioneu les dates sense la columnacapçalera.
    2. A la pestanya Inici , feu clic a Ordena i amp; Filtreu i trieu Ordena el més antic al més recent .

    3. Apareixerà el quadre de diàleg Ordenar advertència . Deixeu l'opció predeterminada Amplia la selecció seleccionada i feu clic a Ordena :

    Això és! Els registres s'han ordenat per data i totes les files es mantenen juntes:

    Com ordenar per mes a Excel

    Potser hi ha moments en què ho desitgeu per ordenar les dates per mes ignorant l'any, per exemple quan agrupeu les dates d'aniversari dels vostres companys o familiars. En aquest cas, la funció d'ordenació d'Excel per defecte no funcionarà perquè sempre té en compte l'any, fins i tot si les cel·les estan formatades per mostrar només el mes o el mes i el dia.

    La solució és afegir una columna auxiliar. , extreu el número del mes i ordena per aquesta columna. Per obtenir un mes des de la data, utilitzeu la funció MES.

    A la captura de pantalla següent, extreu el número del mes de la data a B2 amb aquesta fórmula:

    =MONTH(B2)

    Consell. Si el resultat es mostra com a data i no com a número, establiu el format General a les cel·les de la fórmula.

    I ara, ordena la taula per la columna Mes . Per a això, seleccioneu els números del mes (C2:C8), feu clic a Ordenar & Filtreu > Ordena del més petit al més gran i, a continuació, amplieu la selecció quan Excel us demani que ho feu. Si tot es fa correctament, obtindreu el següentresultat:

    Si us plau, tingueu en compte que les nostres dades ara s'ordenen per mes, ignorant els anys i els dies de cada mes. Si voleu ordenar per mes i dia , seguiu les instruccions de l'exemple següent.

    Si els noms dels mesos s'introdueixen com a text , ordena mitjançant una llista personalitzada tal com s'explica en aquest exemple.

    Com ordenar els aniversaris a Excel per mes i dies

    Quan organitzeu les dates per a un calendari d'aniversari, la solució òptima serà ordenar les dates per mes i dia. En conseqüència, necessiteu una fórmula que extreu mesos i dies des de les dates de naixement.

    En aquest cas, la funció TEXT d'Excel, que pot convertir una data en una cadena de text en el format especificat, és útil. . Per al nostre propòsit, el codi de format "mmdd" o "mm.dd" funcionarà.

    Amb la data d'origen a B2, la fórmula pren aquesta forma:

    =TEXT(B2, "mm.dd")

    A continuació, ordena la columna Mes i dia de més gran a més petita i tindreu les dades ordenades per ordre dels dies de cada mes.

    El mateix resultat es pot aconseguir utilitzant la fórmula DATE com aquesta:

    =DATE(2000, MONTH(B2),DAY(B2))

    La fórmula genera una llista de dates extreu el mes i el dia de la data real a B2 i substituint el any real amb un de fals, 2000 en aquest exemple, encara que podeu posar-ne qualsevol. La idea és tenir el mateix any per a totes les dates, i després ordenar la llista de dates per ordre cronològic.Com que l'any és el mateix, les dates s'ordenaran per mes i dies, que és exactament el que busqueu.

    Com ordenar les dades per any a Excel

    Quan es tracta de ordenant per any, la manera més senzilla és organitzar les dates en ordre cronològic amb l'opció d'ordenació ascendent d'Excel ( Del més antic al més recent ).

    Això ordenarà les dates. per any, després per mes i després per dia, tal com es mostra a la captura de pantalla següent.

    Si per algun motiu no esteu satisfet amb aquest acord, podeu afegir una columna d'ajuda amb la fórmula ANY que extreu l'any de la data:

    =YEAR(C2)

    Després d'ordenar les dades per la columna Any , notareu que les dates estan ordenades només per any, ignorant els mesos i els dies .

    Consell. Si voleu ordenar les dates per dia sense tenir en compte els mesos i els anys, extreu el dia mitjançant la funció DIA i, a continuació, ordena per la columna Dia :

    =DAY(B2)

    Com ordenar per dies de la setmana a Excel

    Per ordenar les dades per dia laborable, també necessitareu una columna d'ajuda com en els exemples anteriors. En aquest cas, omplirem la columna d'ajuda amb la fórmula WEEKDAY que retorna un número corresponent al dia de la setmana i, a continuació, l'ordenarem per la columna d'ajuda.

    Durant una setmana que comença a partir de diumenge (1). ) fins al dissabte (7), aquesta és la fórmula a utilitzar:

    =WEEKDAY(A2)

    Si la setmana comença de dilluns (1) a diumenge(7), aquí teniu la correcta:

    =WEEKDAY(A2, 2)

    On A2 és la cel·la que conté la data.

    Per a aquest exemple, hem utilitzat la primera fórmula i hem obtingut aquesta resultat:

    En cas que els noms dels dies feiners s'introdueixin com a text , no com a dates, feu servir la funció d'ordenació personalitzada tal com s'explica a l'exemple següent.

    Com ordenar les dades a Excel per noms de mesos (o noms de dies feiners)

    En cas que tingueu una llista de noms de mesos com a text , no com a dates amb format per mostrar només mesos, l'aplicació de l'ordenació ascendent d'Excel pot ser un problema: organitzarà els noms dels mesos alfabèticament en lloc d'ordenar per ordre mensual de gener a desembre. En aquest cas, una ordenació personalitzada us ajudarà:

    1. Seleccioneu els registres que voleu ordenar pel nom del mes.
    2. A la pestanya Dades , a la Ordenar & Filtre , feu clic a Ordena .
    3. Al quadre de diàleg Ordena , feu el següent:
      • Sota Columna , seleccioneu el nom de la columna que conté els noms dels mesos.
      • A Ordenar per , trieu Valors de cel·les .
      • A Comanda , seleccioneu Llista personalitzada .
    4. Al quadre de diàleg Llistes personalitzades , seleccioneu noms de mes complets ( gener , febrer , març , …) o noms curts ( gen , febrer , Mar …) depenent de com es mostren els mesos al vostre full de treball:

  • Feu clic a D'acord dues vegades per tancar els dos diàlegscaixes.
  • Fet! Les vostres dades s'han ordenat per nom del mes en ordre cronològic, no per ordre alfabètic:

    Consell. Per ordenar pels noms dels dies de la setmana , seleccioneu els noms complets ( diumenge , dilluns , dimarts , …) o noms curts ( Dg , Dl , Mar …) al quadre de diàleg Llistes personalitzades .

    Com ordenar automàticament per data a l'Excel

    Com heu vist, la funció d'ordenació d'Excel fa front a diversos reptes. L'únic inconvenient és que no és dinàmic. És a dir, hauràs de reordenar les teves dades amb cada canvi i sempre que s'afegeixi informació nova. Potser us preguntareu si hi ha una manera d'ordenar automàticament cada vegada que s'afegeix una nova data perquè les vostres dades estiguin sempre en ordre.

    La millor manera d'aconseguir-ho és mitjançant una macro. A continuació, trobareu un parell d'exemples de codi per ordenar automàticament les dades següents per data en ordre cronològic.

    Macro 1: ordenació automàtica amb cada canvi de full de treball

    Aquesta macro s'executa sempre que es produeix un canvi en qualsevol part del full de treball.

    S'assumeix que les vostres dades es troben a les columnes de la A a la C i que les dates per les quals voleu ordenar es troben a la columna C, començant per C2. També se suposa que la fila 1 conté capçaleres (Header:=xlYes). Si els vostres registres es troben en columnes diferents, feu els ajustos següents:

    • Canvieu la referència A1 a la cel·la superior esquerra del vostreinterval objectiu (incloses les capçaleres).
    • Canvia la referència C2 a la cel·la superior que conté una data.
    Private Sub Worksheet_Change( ByVal Target As Range) En cas d'error Reprèn l'interval següent( "A1" ) .Sort Key1:=Range("C2"), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False , _ Orientation:=xlTopToBottom End Sub

    Macro 2: Ordenació automàtica quan es fan canvis a un rang específic

    Si treballeu amb un full de treball enorme que conté molta informació, tornar a ordenar amb absolutament qualsevol canvi al full pot ser problemàtic. En aquest cas, té sentit limitar l'activació de la macro als canvis que es produeixen en un interval específic. El codi VBA següent ordena les dades només quan es fa un canvi a la columna C que conté les dates.

    Private Sub Worksheet_Change( ByVal Target As Range) En cas d'error Reprèn Següent Si no es creua (Target, Range( "C:C" )) Is Nothing Then Range ( "A1") End If End Sub

    Consell. Aquestes macros es poden utilitzar per ordenar automàticament per qualsevol tipus de dades , no només per dates. Els nostres codis de mostra s'ordenen en ordre ascendent. Si voleu ordenar descendent , canvieu Order1:=xlAscending a Order1:=xlDescending.

    Com afegir la macro al vostre full de treball

    Com que ambdues macros s'executen automàticament quan es canvia un full de treball,el codi s'ha d'inserir al full on voleu ordenar les dades (Sheet1 en aquest exemple). A continuació s'explica com:

    1. Premeu Alt + F11 per obrir l'Editor de VBA.
    2. A l' Explorador de projectes de l'esquerra, feu doble clic al full on voleu ordenació automàtica.
    3. Enganxeu el codi a la finestra Codi.

    Ordeneu automàticament les dates amb la fórmula

    Suposant que teniu un llista de dates i us agradaria disposar-les automàticament en ordre cronològic en una columna separada, al costat de la llista original. Això es pot fer amb la fórmula de matriu següent:

    =IFERROR(INDEX($A$2:$A$20, MATCH(ROWS($A$2:A2), COUNTIF($A$2:$A$20, "<="&$A$2:$A$20), 0)), "")

    On A2:A20 són les dates originals (no ordenades), incloses algunes cel·les buides per a possibles entrades noves.

    Introduïu la fórmula en una cel·la en blanc al costat de la columna amb les dates originals (C2 en aquest exemple) i premeu les tecles Ctrl + Maj + Intro simultàniament per completar-la. A continuació, arrossegueu la fórmula fins a les cel·les restants (C2:C20 en el nostre cas).

    Consell. Per ordenar automàticament les dates afegides recentment, assegureu-vos d'incloure un nombre suficient de cel·les en blanc a l'interval referit. Per exemple, la nostra llista de dates es troba a l'interval A2:A7, però proporcionem $A$2:$A$20 a la fórmula i l'omplim a les cel·les C2 a C20. La funció IFERROR evita errors a les cel·les addicionals, retornant una cadena buida ("").

    L'ordenació d'Excel per data no funciona

    Si les dates no estan ordenades com ellesEl més probable és que s'introdueixin en un format que Excel no entén, per tant, es perceben com a cadenes de text en lloc de dates. El tutorial següent explica com distingir les anomenades "dates de text" i convertir-les en dates normals d'Excel: Com convertir text a data a Excel.

    Així és com ordenar per data a Excel. Us agraeixo la lectura i esperem veure-us al nostre bloc la setmana vinent!

    Descàrregues disponibles

    Exemples de fórmules d'ordenació per data (fitxer .xlsx)

    Macro d'ordenació automàtica ( .xlsm)

    Michael Brown és un entusiasta de la tecnologia dedicat amb una passió per simplificar processos complexos mitjançant eines de programari. Amb més d'una dècada d'experiència en la indústria tecnològica, ha perfeccionat les seves habilitats en Microsoft Excel i Outlook, així com en Google Sheets i Docs. El bloc de Michael es dedica a compartir els seus coneixements i experiència amb altres persones, oferint consells i tutorials fàcils de seguir per millorar la productivitat i l'eficiència. Tant si sou un professional experimentat com si sou un principiant, el bloc de Michael ofereix valuoses idees i consells pràctics per treure el màxim profit d'aquestes eines de programari essencials.