Enhavtabelo
Hodiaŭ ni detale rigardos la sintakson kaj tipajn uzojn de la nova dinamika tabelo SORTBY-funkcio. Vi lernos kiel personecigi en Excel per formulo, hazarde ordigi liston, aranĝi ĉelojn laŭ tekstolongo, kaj pli.
Microsoft Excel provizas kelkajn manierojn aranĝi tekstajn datumojn alfabete, datojn. kronologie, kaj nombroj de plej malgranda ĝis plej granda aŭ de plej alta ĝis plej malalta. Estas ankaŭ maniero ordigi laŭ viaj propraj kutimaj listoj. Krom la konvencia Ordigo-funkcio, Excel 365 enkondukas tute novan manieron ordigi datumojn per formuloj - tre oportuna kaj nekredeble simple uzi!
Excel SORTBY-funkcio
La funkcio SORTBY en Excel estas desegnita por ordigi unu gamon aŭ tabelon surbaze de la valoroj en alia gamo aŭ tabelo. Ordigo povas esti farita per unu aŭ pluraj kolumnoj.
SORTBY estas unu el ses novaj dinamikaj tabelfunkcioj disponeblaj en Excel por Microsoft 365 kaj Excel 2021. Ĝia rezulto estas dinamika tabelo kiu disvastiĝas al najbaraj ĉeloj kaj ĝisdatigas aŭtomate kiam la fontodatumoj ŝanĝiĝas.
La funkcio SORTBY havas varian nombron da argumentoj - la unuaj du estas postulataj kaj la aliaj estas laŭvolaj:
SORTBY(tabelo, laŭ_tabelo1, [ordigo_1], [laŭ_ardo2, ordigo_2] ,…)Tabelo (postulata) - la gamo de ĉeloj aŭ tabelo de valoroj ordigotaj.
Per_abelo1 (postulata) - la gamo aŭ tabelo ordigiper.
Ordo_1 (laŭvola) - la ordigo:
- 1 aŭ ellasita (defaŭlte) - supreniranta
- -1 - malkreskanta
By_array2 / Sort_order2 , … (laŭvola) - pliaj tabeloj/ordaj paroj por uzi por ordigo.
Grava noto! Nuntempe la SORTBY-funkcio disponeblas nur kun Microsoft 365-abonoj kaj Excel 2021. En Excel 2019, Excel 2016 kaj pli fruaj versioj la SORTBY-funkcio ne estas disponebla.
SORTBY-funkcio - 4 memorindaj aferoj
Por ke Excel SORTBY-formulo funkciu ĝuste, estas kelkaj gravaj punktoj pri kiuj atentu:
- La argumentoj de_abelo devus esti aŭ unu vico altaj aŭ unu kolumno larĝe.
- La argumentoj array kaj ĉiuj by_array devas havi kongruajn dimensiojn. Ekzemple, kiam vi ordigas per du kolumnoj, tabelo , per_tabelo1 kaj per_tabelo2 devus havi la saman nombron da vicoj; alie okazos #VALUE-eraro.
- Se la tabelo redonita de SORTBY estas la fina rezulto (eligo en ĉelo kaj ne transdonita al alia funkcio), Excel kreas dinamikan disverŝan gamon kaj plenigas ĝin per la rezultoj. Do, certigu, ke vi havas sufiĉe da malplenaj ĉeloj sube kaj/aŭ dekstre de la ĉelo kie vi enigas la formulon, alie vi ricevos #SPILL-eraron.
- La rezultoj de SORTBY-formuloj ĝisdatigas aŭtomate kiam ajn la fontaj datumoj ŝanĝiĝas. Tamen, novaj enskriboj kiuj estas aldonitaj ekstere dela tabelo referencita en la formulo ne estas inkluzivitaj en la rezultoj krom se vi ĝisdatigas la referencon tabelo . Por ke la referencita tabelo disvastigu aŭtomate, konvertu la fontan gamon al Excel-tabelo aŭ kreu dinamikan nomitan gamon.
Baza SORTBY-formulo en Excel
Jen tipa scenaro uzi SORTBY formulo en Excel:
Supozi, vi havas liston de projektoj kun la kampo Valoro . Vi volas ordigi la projektojn laŭ ilia valoro sur aparta folio. Ĉar aliaj uzantoj ne bezonas vidi la nombrojn, vi preferus ne inkluzivi la kolumnon Valoro en la rezultojn.
La tasko povas esti facile plenumita per la funkcio SORTBY, por kiu vi liveru la jenajn argumentojn:
- Tabelo estas A2:A10 - ĉar vi ne deziras, ke la kolumno Valoro estu montrita en la rezultoj, vi lasas ĝin el la tabelo.
- Laŭ_tabelo1 estas B2:B10 - ordigu laŭ Valoro .
- Ordo_1 estas -1 - malsupreniranta, t.e. de plej alta al plej malalta.
Kunigante la argumentojn, ni ricevas ĉi tiun formulon:
=SORTBY(A2:B10, B2:B10, -1)
Por simpleco, ni uzas la formulon sur la sama folio - enigu ĝin en D2 kaj premu la Enigu klavon. La rezultoj "disverŝas" aŭtomate al tiom da ĉeloj kiom necesas (D2:D10 en nia kazo). Sed teknike, la formulo estas nur en la unua ĉelo, kaj forigi ĝin de D2 forigos ĉiujn rezultojn.
Se uzata sur alia folio, la formulo prenas lajena formo:
=SORTBY(Sheet1!A2:A10, Sheet1!B2:B10, -1)
Kie Sheet1 estas la laborfolio enhavanta la originajn datumojn.
Uzante SORTBY-funkcion en Excel - formulekzemploj
Malsupre vi trovos kelkajn pliajn ekzemplojn pri uzado de SORTBY, kiuj espereble pruvos utilaj kaj komprenemaj.
Ordigi laŭ pluraj kolumnoj
La baza formulo supre diskutita ordigas datumojn laŭ unu kolumno. Sed kio se vi bezonas aldoni plian nivelon de ordigo?
Supoze, ke nia specimena tabelo havas du kampojn, Statuso (kolumno B) kaj Valoro (kolumno C) , ni deziras unue ordigi laŭ Stato alfabete, kaj poste laŭ Valoro malkreskanta.
Por ordigi laŭ du kolumnoj, ni nur aldonas unu plian paron de la per_arago / ordigo argumentoj:
- Tabelo estas A2:C10 - ĉi-foje, ni volas inkluzivi ĉiujn tri kolumnojn en la rezultoj.
- Lau_tabelo1 estas B2:B10 - unue, ordigu per Stato .
- Ordo_1 estas 1 - ordigu alfabete el A al Z.
- Lau_arago2 estas C2:C10 - tiam, ordigu per Valoro .
- Ordo_2 estas -1 - ordigu de plej granda al plej malgranda.
Kiel rezulto, ni ricevas la jenan formulon:
=SORTBY(A2:B10, B2:B10, 1, C2:C10, -1)
Kiu rearanĝas niajn datumojn ĝuste kiel ni instrukciis ĝin:
Persona ordigo en Excel kun formulo
Por ordigi datumojn laŭ propra ordo, vi povas aŭ uzi la Propra Ordigo de Excel aŭ konstrui formulon SORTBY MATCH tiamaniere:
SORTBY(tabelo,MATCH( gamo_al_ordigi , persona_listo , 0))Rigardante pli detale nian datuman aron, vi verŝajne trovos pli oportune ordigi la projektojn laŭ ilia stato "logike" , ekz. laŭ graveco, prefere ol alfabete.
Por fari ĝin, ni unue kreas propran liston en la dezirata ordigo ( En progreso , Kompletigita , En teno ) tajpante ĉiun valoron en aparta ĉelo en la intervalo E2:E4.
Kaj poste, uzante la supran ĝeneralan formulon, ni provizas la fontan gamon por tabelo (A2 :C10), la kolumno Stato por intervalo_al_ordigi (B2:B10), kaj la kutima listo, kiun ni kreis por persona_listo (E2:E4).
=SORTBY(A2:C10, MATCH(B2:B10, E2:E4, 0))
Kiel rezulto, ni havas la projektojn ordigitaj laŭ sia stato ĝuste laŭbezone:
Por ordigi laŭ kutima listo en la inversa sinsekvo, metu -1 por la sort_order1 argumento:
=SORTBY(A2:C10, MATCH(B2:B10, E2:E4, 0), -1)
Kaj vi havos la projektojn ordigitaj en la kontraŭa direkto:
Ĉu aldone ordigi rekordojn ene de ĉiu stato? Nedankinde. Simple, aldonu unu plian ordigan nivelon al la formulo, diru per Valoro (C2:C10), kaj difinu la deziratan ordigon, suprenirante en nia kazo:
=SORTBY(A2:C10, MATCH(B2:B10, E2:E5, 0), 1, C2:C10, 1)
Granda avantaĝo de la formulo SORTBY super la Propra Ordigo de Excel estas, ke la formulo ĝisdatiĝas aŭtomate kiam la originaj datumoj ŝanĝiĝas, dum la funkcio postulas purigadon kaj reordigon kun ĉiu ŝanĝo.
Kiel. ĉi tiu formulofunkcias:
Kiel jam menciite, la funkcio SORTBY de Excel povas nur prilabori tabelojn "ordigi laŭ" kies dimensioj kongruas kun la fonta tabelo. Ĉar nia fonta tabelo (C2:C10) enhavas 9 vicojn kaj la kutima listo (E2:E4) nur 3 vicojn, ni ne povas provizi ĝin rekte al la argumento by_array . Anstataŭe, ni uzas la MATCH-funkcion por krei 9-vican tabelon:
MATCH(B2:B10, E2:E5, 0)
Ĉi tie, ni uzas la kolumnon Status (B2:B10) kiel serĉvalorojn kaj nia kutima listo (E2:E5) kiel serĉa tabelo. La lasta argumento estas agordita al 0 por serĉi precizajn kongruojn. Kiel rezulto, ni ricevas tabelon de 9 nombroj, ĉiu reprezentante la relativan pozicion de donita Stato valoro en la kutima listo:
{1;3;2;1;3;2;2;1;2}
Ĉi tiu tabelo iras rekte. al la argumento by_array de la SORTBY-funkcio kaj devigas ĝin meti la datumojn en la sinsekvo responda al la elementoj de la tabelo, t.e. unue enskriboj reprezentitaj per 1, poste enskriboj reprezentitaj per 2, ktp.
Hazarda ordigo en Excel kun formulo
En pli fruaj Excel-versioj, vi povas fari hazardan ordigon per la funkcio RAND kiel klarigite en ĉi tiu lernilo: Kiel hazarde ordigi liston en Excel.
En nova Excel, vi povas uzi pli potencan RANDARRAY-funkcion kune kun SORTBY:
SORTBY( tabelo , RANDARRAY(ROWS( tabelo )))Kie tabelo estas la fontaj datumoj, kiujn vi volas miksi.
Tiu ĉi ĝenerala formulo funkcias por listo konsistanta elununura kolumno kaj ankaŭ por plurkolumna gamo.
Ekzemple, por hazarde ordigi liston en A2:A10, uzu ĉi tiun formulon:
=SORTBY(A2:A10, RANDARRAY(ROWS(A2:A10)))
Por miksi datumoj en A2:C10 konservante la vicojn kune, uzu ĉi tiun:
=SORTBY(A2:C10, RANDARRAY(ROWS(A2:C10)))
Kiel ĉi tiu formulo funkcias:
La funkcio RANDARRAY produktas tabelon de hazardaj nombroj uzeblaj por ordigo, kaj vi transdonas ĝin en la argumenton by_array de SORTBY. Por specifi kiom da hazardaj nombroj generi, vi kalkulas la nombron da vicoj en la fonta gamo uzante la funkcion ROWS, kaj "nutras" tiun nombron al la argumento vicoj de RANDARRAY. Jen!
Rimarku. Kiel ĝia antaŭulo, RANDARRAY estas volatila funkcio kaj ĝi generas novan tabelon de hazardaj nombroj ĉiufoje kiam la laborfolio estas rekalkulita. Kiel rezulto, viaj datumoj estos uzataj kun ĉiu ŝanĝo sur la folio. Por malhelpi aŭtomatan rimedon, vi povas uzi la funkcion Alglui Speciala > Valoroj por anstataŭigi formulojn per iliaj valoroj.
Ordigi ĉelojn laŭ la longo de la ĉeno
Por ordigi ĉelojn laŭ la longo de tekstaj ĉenoj kiujn ili enhavas, uzu la funkcion LEN por kalkuli la nombron da signoj en ĉiu ĉelo, kaj liveri la kalkulitajn longojn al la argumento by_array de SORTBY. La argumento ordo_ordigi povas esti agordita aŭ 1 aŭ -1, depende de la preferata ordo de ordigo.
Por ordigi laŭ tekstoĉeno de plej malgranda ĝis plej granda:
SORTBY(tabelo, LEN(tabelo), 1)Ordigi pertekstoĉeno de plej granda ĝis plej malgranda:
SORTBY(tabelo, LEN(tabelo), -1)Kaj jen formulo, kiu montras ĉi tiun aliron sur realaj datumoj:
=SORTBY(A2:A7, LEN(A2:A7), 1)
Kie A2:A7 estas la originaj ĉeloj, kiujn vi ŝatus ordigi laŭ tekstlongo en pligranda ordo:
ORDI kontraŭ ORDI
En la grupo de novaj dinamikaj tabelaj funkcioj de Excel, estas du desegnita por ordigo. Malsupre ni listigas la plej esencajn diferencojn kaj similecojn same kiel kiam ĉiu estas plej bona por esti uzata.
- Malkiel la funkcio SORT, SORTBY ne postulas, ke la tabelo "ordigi laŭ" estu parto de la fonto. tabelo, nek ĝi bezonas aperi en rezultoj. Do, kiam via tasko estas ordigi gamon surbaze de alia sendependa tabelo aŭ kutima listo, SORTBY estas la ĝusta funkcio por uzi. Se vi serĉas ordigi gamon surbaze de siaj propraj valoroj, tiam SORT estas pli taŭga.
- Ambaŭ funkcioj subtenas plurajn nivelojn de ordigo kaj ambaŭ povas esti ĉenitaj kune kun aliaj dinamikaj tabeloj kaj konvenciaj funkcioj.
- Ambaŭ funkcioj disponeblas nur por uzantoj de Excel 365 kaj Excel 2021.
La funkcio de Excel SORTBY ne funkcias
En la okazo, se via formulo SORTBY resendas eraron, tio plej verŝajne estas pro unu el la sekvaj kialoj.
Nevalidaj argumentoj per_array
La argumentoj by_array devas esti ununura vico aŭ ununura kolumno kaj kongruaj laŭ grandeco kun la tabelo argumento. Ekzemple, se tabelo havas 10vicoj, by_array ankaŭ devus inkluzivi 10 vicojn. Alie #VALORO! eraro okazas.
Nevalidaj argumentoj pri ordigo
La argumentoj pri ordigo povas esti nur 1 (ascendenta) aŭ -1 (malkreskanta). Se neniu valoro estas agordita, SORTBY defaŭlte al pliiĝanta ordo. Se iu alia valoro estas agordita, #VALORO! eraro estas resendita.
Ne estas sufiĉe da spaco por rezultoj
Kiel ajn alia dinamika tabelfunkcio, SORTBY verŝas la rezultojn en aŭtomate regrandigeblan kaj ĝisdatigeblan gamon. Se ne estas sufiĉe da malplenaj ĉeloj por montri ĉiujn valorojn, #SPILL! eraro estas ĵetita.
Fonto-libro estas fermita
Se SORTBY-formulo referencas alian Excel-dosieron, ambaŭ laborlibroj devas esti malfermitaj. Se la fonta laborlibro estas fermita, #REF! eraro okazas.
Via Excel-versio ne subtenas dinamikajn tabelojn
Kiam estas uzata en antaŭdinamika versio de Excel, la funkcio SORT liveras #NOMON? eraro.
Jen kiel uzi la funkcion SORTBY en Excel por fari laŭmendan ordigon kaj aliajn aferojn. Mi dankas vin pro legado kaj esperas vidi vin en nia blogo venontsemajne!
Praktiku laborlibron por elŝuto
Excel SORTBY-formuloj (.xlsx-dosiero)