[{"data":1,"prerenderedAt":3730},["ShallowReactive",2],{"content-query-2ARLWSPRUE":3},[4,891,1723,2484,3187],{"_path":5,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":9,"description":10,"category":11,"date":12,"readingTime":13,"tags":14,"body":21,"_type":885,"_id":886,"_source":887,"_file":888,"_stem":889,"_extension":890},"\u002Fexcel\u002Fdynamic-arrays-filter-sort-unique-sequence","excel",false,"","Excel Dynamic Arrays: FILTER, SORT, UNIQUE, and SEQUENCE Explained","Learn how Excel's modern dynamic array functions — FILTER, SORT, UNIQUE, and SEQUENCE — automatically spill results into multiple cells, replacing complex array formulas and manual updates.","Excel","2026-10-24",8,[15,16,17,18,19,20],"Dynamic Arrays","FILTER","SORT","UNIQUE","SEQUENCE","Excel 365",{"type":22,"children":23,"toc":866},"root",[24,32,39,44,58,87,93,103,117,128,142,163,170,180,194,204,218,224,229,243,263,269,283,288,302,307,321,327,338,352,357,363,377,382,396,408,422,428,433,475,480,486,500,505,519,524,538,544,549,563,568,582,588,593,607,620,625,639,645,847,860],{"type":25,"tag":26,"props":27,"children":28},"element","p",{},[29],{"type":30,"value":31},"text","Dynamic array functions, introduced in Microsoft 365 and Excel 2021, fundamentally changed how formulas work. Instead of returning a single value, these functions return a range of results that automatically \"spill\" into neighboring empty cells. No more Ctrl+Shift+Enter, no more dragging fill handles.",{"type":25,"tag":33,"props":34,"children":36},"h2",{"id":35},"what-is-a-spill-range",[37],{"type":30,"value":38},"What Is a Spill Range?",{"type":25,"tag":26,"props":40,"children":41},{},[42],{"type":30,"value":43},"When a dynamic array formula returns multiple values, they flow into adjacent cells automatically. This spill range is indicated by a blue border. The formula lives only in the top-left cell — the rest are read-only overflow.",{"type":25,"tag":26,"props":45,"children":46},{},[47,49,56],{"type":30,"value":48},"To reference an entire spill range in another formula, use the spill operator ",{"type":25,"tag":50,"props":51,"children":53},"code",{"className":52},[],[54],{"type":30,"value":55},"#",{"type":30,"value":57},":",{"type":25,"tag":59,"props":60,"children":63},"pre",{"className":61,"code":62,"language":6,"meta":8,"style":8},"language-excel shiki shiki-themes github-dark","=SORT(A2:A20)       ← formula in D2, results spill into D3:D21\n=D2#               ← references the entire spill range dynamically\n",[64],{"type":25,"tag":50,"props":65,"children":66},{"__ignoreMap":8},[67,78],{"type":25,"tag":68,"props":69,"children":72},"span",{"class":70,"line":71},"line",1,[73],{"type":25,"tag":68,"props":74,"children":75},{},[76],{"type":30,"value":77},"=SORT(A2:A20)       ← formula in D2, results spill into D3:D21\n",{"type":25,"tag":68,"props":79,"children":81},{"class":70,"line":80},2,[82],{"type":25,"tag":68,"props":83,"children":84},{},[85],{"type":30,"value":86},"=D2#               ← references the entire spill range dynamically\n",{"type":25,"tag":33,"props":88,"children":90},{"id":89},"filter-extract-rows-that-meet-conditions",[91],{"type":30,"value":92},"FILTER: Extract Rows That Meet Conditions",{"type":25,"tag":26,"props":94,"children":95},{},[96,101],{"type":25,"tag":50,"props":97,"children":99},{"className":98},[],[100],{"type":30,"value":16},{"type":30,"value":102}," is the dynamic replacement for complex combinations of INDEX\u002FMATCH or helper columns.",{"type":25,"tag":59,"props":104,"children":106},{"className":61,"code":105,"language":6,"meta":8,"style":8},"=FILTER(array, include, [if_empty])\n",[107],{"type":25,"tag":50,"props":108,"children":109},{"__ignoreMap":8},[110],{"type":25,"tag":68,"props":111,"children":112},{"class":70,"line":71},[113],{"type":25,"tag":68,"props":114,"children":115},{},[116],{"type":30,"value":105},{"type":25,"tag":26,"props":118,"children":119},{},[120,126],{"type":25,"tag":121,"props":122,"children":123},"strong",{},[124],{"type":30,"value":125},"Example:",{"type":30,"value":127}," Extract all rows from a sales table where Region is \"North\":",{"type":25,"tag":59,"props":129,"children":131},{"className":61,"code":130,"language":6,"meta":8,"style":8},"=FILTER(A2:D100, B2:B100=\"North\", \"No results found\")\n",[132],{"type":25,"tag":50,"props":133,"children":134},{"__ignoreMap":8},[135],{"type":25,"tag":68,"props":136,"children":137},{"class":70,"line":71},[138],{"type":25,"tag":68,"props":139,"children":140},{},[141],{"type":30,"value":130},{"type":25,"tag":26,"props":143,"children":144},{},[145,147,153,155,161],{"type":30,"value":146},"The ",{"type":25,"tag":50,"props":148,"children":150},{"className":149},[],[151],{"type":30,"value":152},"if_empty",{"type":30,"value":154}," argument prevents the ",{"type":25,"tag":50,"props":156,"children":158},{"className":157},[],[159],{"type":30,"value":160},"#CALC!",{"type":30,"value":162}," error when nothing matches.",{"type":25,"tag":164,"props":165,"children":167},"h3",{"id":166},"multiple-conditions-with-filter",[168],{"type":30,"value":169},"Multiple Conditions with FILTER",{"type":25,"tag":26,"props":171,"children":172},{},[173,178],{"type":25,"tag":121,"props":174,"children":175},{},[176],{"type":30,"value":177},"AND logic",{"type":30,"value":179}," (both conditions must be true — multiply conditions):",{"type":25,"tag":59,"props":181,"children":183},{"className":61,"code":182,"language":6,"meta":8,"style":8},"=FILTER(A2:D100, (B2:B100=\"North\")*(C2:C100=\"Widget A\"), \"No results\")\n",[184],{"type":25,"tag":50,"props":185,"children":186},{"__ignoreMap":8},[187],{"type":25,"tag":68,"props":188,"children":189},{"class":70,"line":71},[190],{"type":25,"tag":68,"props":191,"children":192},{},[193],{"type":30,"value":182},{"type":25,"tag":26,"props":195,"children":196},{},[197,202],{"type":25,"tag":121,"props":198,"children":199},{},[200],{"type":30,"value":201},"OR logic",{"type":30,"value":203}," (either condition — add conditions):",{"type":25,"tag":59,"props":205,"children":207},{"className":61,"code":206,"language":6,"meta":8,"style":8},"=FILTER(A2:D100, (B2:B100=\"North\")+(B2:B100=\"South\"), \"No results\")\n",[208],{"type":25,"tag":50,"props":209,"children":210},{"__ignoreMap":8},[211],{"type":25,"tag":68,"props":212,"children":213},{"class":70,"line":71},[214],{"type":25,"tag":68,"props":215,"children":216},{},[217],{"type":30,"value":206},{"type":25,"tag":164,"props":219,"children":221},{"id":220},"combining-filter-with-sort",[222],{"type":30,"value":223},"Combining FILTER with SORT",{"type":25,"tag":26,"props":225,"children":226},{},[227],{"type":30,"value":228},"Extract the top 5 highest-revenue rows from the North region:",{"type":25,"tag":59,"props":230,"children":232},{"className":61,"code":231,"language":6,"meta":8,"style":8},"=SORT(FILTER(A2:D100, B2:B100=\"North\"), 4, -1)\n",[233],{"type":25,"tag":50,"props":234,"children":235},{"__ignoreMap":8},[236],{"type":25,"tag":68,"props":237,"children":238},{"class":70,"line":71},[239],{"type":25,"tag":68,"props":240,"children":241},{},[242],{"type":30,"value":231},{"type":25,"tag":26,"props":244,"children":245},{},[246,247,253,255,261],{"type":30,"value":146},{"type":25,"tag":50,"props":248,"children":250},{"className":249},[],[251],{"type":30,"value":252},"4",{"type":30,"value":254}," means sort by column 4 (Revenue), ",{"type":25,"tag":50,"props":256,"children":258},{"className":257},[],[259],{"type":30,"value":260},"-1",{"type":30,"value":262}," means descending order.",{"type":25,"tag":33,"props":264,"children":266},{"id":265},"sort-and-sortby-order-your-data-dynamically",[267],{"type":30,"value":268},"SORT and SORTBY: Order Your Data Dynamically",{"type":25,"tag":59,"props":270,"children":272},{"className":61,"code":271,"language":6,"meta":8,"style":8},"=SORT(array, [sort_index], [sort_order], [by_col])\n",[273],{"type":25,"tag":50,"props":274,"children":275},{"__ignoreMap":8},[276],{"type":25,"tag":68,"props":277,"children":278},{"class":70,"line":71},[279],{"type":25,"tag":68,"props":280,"children":281},{},[282],{"type":30,"value":271},{"type":25,"tag":26,"props":284,"children":285},{},[286],{"type":30,"value":287},"Sort a product list alphabetically:",{"type":25,"tag":59,"props":289,"children":291},{"className":61,"code":290,"language":6,"meta":8,"style":8},"=SORT(A2:A50)\n",[292],{"type":25,"tag":50,"props":293,"children":294},{"__ignoreMap":8},[295],{"type":25,"tag":68,"props":296,"children":297},{"class":70,"line":71},[298],{"type":25,"tag":68,"props":299,"children":300},{},[301],{"type":30,"value":290},{"type":25,"tag":26,"props":303,"children":304},{},[305],{"type":30,"value":306},"Sort a multi-column table by the 3rd column in descending order:",{"type":25,"tag":59,"props":308,"children":310},{"className":61,"code":309,"language":6,"meta":8,"style":8},"=SORT(A2:D50, 3, -1)\n",[311],{"type":25,"tag":50,"props":312,"children":313},{"__ignoreMap":8},[314],{"type":25,"tag":68,"props":315,"children":316},{"class":70,"line":71},[317],{"type":25,"tag":68,"props":318,"children":319},{},[320],{"type":30,"value":309},{"type":25,"tag":164,"props":322,"children":324},{"id":323},"sortby-for-multi-level-sorting",[325],{"type":30,"value":326},"SORTBY for Multi-Level Sorting",{"type":25,"tag":26,"props":328,"children":329},{},[330,336],{"type":25,"tag":50,"props":331,"children":333},{"className":332},[],[334],{"type":30,"value":335},"SORTBY",{"type":30,"value":337}," sorts one array based on the values in another — useful when the sort column is not part of the returned array:",{"type":25,"tag":59,"props":339,"children":341},{"className":61,"code":340,"language":6,"meta":8,"style":8},"=SORTBY(A2:B50, B2:B50, -1, A2:A50, 1)\n",[342],{"type":25,"tag":50,"props":343,"children":344},{"__ignoreMap":8},[345],{"type":25,"tag":68,"props":346,"children":347},{"class":70,"line":71},[348],{"type":25,"tag":68,"props":349,"children":350},{},[351],{"type":30,"value":340},{"type":25,"tag":26,"props":353,"children":354},{},[355],{"type":30,"value":356},"This sorts by column B descending first, then by column A ascending as a tiebreaker.",{"type":25,"tag":33,"props":358,"children":360},{"id":359},"unique-deduplicate-lists-instantly",[361],{"type":30,"value":362},"UNIQUE: Deduplicate Lists Instantly",{"type":25,"tag":59,"props":364,"children":366},{"className":61,"code":365,"language":6,"meta":8,"style":8},"=UNIQUE(array, [by_col], [exactly_once])\n",[367],{"type":25,"tag":50,"props":368,"children":369},{"__ignoreMap":8},[370],{"type":25,"tag":68,"props":371,"children":372},{"class":70,"line":71},[373],{"type":25,"tag":68,"props":374,"children":375},{},[376],{"type":30,"value":365},{"type":25,"tag":26,"props":378,"children":379},{},[380],{"type":30,"value":381},"Extract a distinct list of products from a column:",{"type":25,"tag":59,"props":383,"children":385},{"className":61,"code":384,"language":6,"meta":8,"style":8},"=UNIQUE(C2:C100)\n",[386],{"type":25,"tag":50,"props":387,"children":388},{"__ignoreMap":8},[389],{"type":25,"tag":68,"props":390,"children":391},{"class":70,"line":71},[392],{"type":25,"tag":68,"props":393,"children":394},{},[395],{"type":30,"value":384},{"type":25,"tag":26,"props":397,"children":398},{},[399,401,406],{"type":30,"value":400},"Return items that appear ",{"type":25,"tag":121,"props":402,"children":403},{},[404],{"type":30,"value":405},"exactly once",{"type":30,"value":407}," (not duplicated at all):",{"type":25,"tag":59,"props":409,"children":411},{"className":61,"code":410,"language":6,"meta":8,"style":8},"=UNIQUE(C2:C100, FALSE, TRUE)\n",[412],{"type":25,"tag":50,"props":413,"children":414},{"__ignoreMap":8},[415],{"type":25,"tag":68,"props":416,"children":417},{"class":70,"line":71},[418],{"type":25,"tag":68,"props":419,"children":420},{},[421],{"type":30,"value":410},{"type":25,"tag":164,"props":423,"children":425},{"id":424},"building-a-dynamic-dropdown-with-unique",[426],{"type":30,"value":427},"Building a Dynamic Dropdown with UNIQUE",{"type":25,"tag":26,"props":429,"children":430},{},[431],{"type":30,"value":432},"Use the spill range from UNIQUE as the source for a data validation dropdown:",{"type":25,"tag":434,"props":435,"children":436},"ol",{},[437,459,464],{"type":25,"tag":438,"props":439,"children":440},"li",{},[441,443,449,451,457],{"type":30,"value":442},"Put ",{"type":25,"tag":50,"props":444,"children":446},{"className":445},[],[447],{"type":30,"value":448},"=UNIQUE(C2:C100)",{"type":30,"value":450}," in cell ",{"type":25,"tag":50,"props":452,"children":454},{"className":453},[],[455],{"type":30,"value":456},"F2",{"type":30,"value":458},".",{"type":25,"tag":438,"props":460,"children":461},{},[462],{"type":30,"value":463},"Select the dropdown target cell → Data → Data Validation → List.",{"type":25,"tag":438,"props":465,"children":466},{},[467,469],{"type":30,"value":468},"In Source enter: ",{"type":25,"tag":50,"props":470,"children":472},{"className":471},[],[473],{"type":30,"value":474},"=$F$2#",{"type":25,"tag":26,"props":476,"children":477},{},[478],{"type":30,"value":479},"The dropdown now updates automatically whenever new products appear.",{"type":25,"tag":33,"props":481,"children":483},{"id":482},"sequence-generate-number-or-date-series",[484],{"type":30,"value":485},"SEQUENCE: Generate Number or Date Series",{"type":25,"tag":59,"props":487,"children":489},{"className":61,"code":488,"language":6,"meta":8,"style":8},"=SEQUENCE(rows, [columns], [start], [step])\n",[490],{"type":25,"tag":50,"props":491,"children":492},{"__ignoreMap":8},[493],{"type":25,"tag":68,"props":494,"children":495},{"class":70,"line":71},[496],{"type":25,"tag":68,"props":497,"children":498},{},[499],{"type":30,"value":488},{"type":25,"tag":26,"props":501,"children":502},{},[503],{"type":30,"value":504},"Generate numbers 1 through 20:",{"type":25,"tag":59,"props":506,"children":508},{"className":61,"code":507,"language":6,"meta":8,"style":8},"=SEQUENCE(20)\n",[509],{"type":25,"tag":50,"props":510,"children":511},{"__ignoreMap":8},[512],{"type":25,"tag":68,"props":513,"children":514},{"class":70,"line":71},[515],{"type":25,"tag":68,"props":516,"children":517},{},[518],{"type":30,"value":507},{"type":25,"tag":26,"props":520,"children":521},{},[522],{"type":30,"value":523},"Create a 4-row by 3-column multiplication table starting at 1, step 1:",{"type":25,"tag":59,"props":525,"children":527},{"className":61,"code":526,"language":6,"meta":8,"style":8},"=SEQUENCE(4, 3, 1, 1)\n",[528],{"type":25,"tag":50,"props":529,"children":530},{"__ignoreMap":8},[531],{"type":25,"tag":68,"props":532,"children":533},{"class":70,"line":71},[534],{"type":25,"tag":68,"props":535,"children":536},{},[537],{"type":30,"value":526},{"type":25,"tag":164,"props":539,"children":541},{"id":540},"generating-a-date-series",[542],{"type":30,"value":543},"Generating a Date Series",{"type":25,"tag":26,"props":545,"children":546},{},[547],{"type":30,"value":548},"Create a full calendar month starting from a date in cell A1:",{"type":25,"tag":59,"props":550,"children":552},{"className":61,"code":551,"language":6,"meta":8,"style":8},"=SEQUENCE(31, 1, A1, 1)\n",[553],{"type":25,"tag":50,"props":554,"children":555},{"__ignoreMap":8},[556],{"type":25,"tag":68,"props":557,"children":558},{"class":70,"line":71},[559],{"type":25,"tag":68,"props":560,"children":561},{},[562],{"type":30,"value":551},{"type":25,"tag":26,"props":564,"children":565},{},[566],{"type":30,"value":567},"Format the results as dates. To limit to weekdays only, wrap in WORKDAY:",{"type":25,"tag":59,"props":569,"children":571},{"className":61,"code":570,"language":6,"meta":8,"style":8},"=WORKDAY(A1-1, SEQUENCE(23))\n",[572],{"type":25,"tag":50,"props":573,"children":574},{"__ignoreMap":8},[575],{"type":25,"tag":68,"props":576,"children":577},{"class":70,"line":71},[578],{"type":25,"tag":68,"props":579,"children":580},{},[581],{"type":30,"value":570},{"type":25,"tag":33,"props":583,"children":585},{"id":584},"practical-combined-example-dynamic-leaderboard",[586],{"type":30,"value":587},"Practical Combined Example: Dynamic Leaderboard",{"type":25,"tag":26,"props":589,"children":590},{},[591],{"type":30,"value":592},"Show the top 10 salespeople by revenue with their region, sorted highest first:",{"type":25,"tag":59,"props":594,"children":596},{"className":61,"code":595,"language":6,"meta":8,"style":8},"=TAKE(SORT(A2:D100, 4, -1), 10)\n",[597],{"type":25,"tag":50,"props":598,"children":599},{"__ignoreMap":8},[600],{"type":25,"tag":68,"props":601,"children":602},{"class":70,"line":71},[603],{"type":25,"tag":68,"props":604,"children":605},{},[606],{"type":30,"value":595},{"type":25,"tag":26,"props":608,"children":609},{},[610,612,618],{"type":30,"value":611},"Where column A = Name, B = Region, C = Product, D = Revenue. ",{"type":25,"tag":50,"props":613,"children":615},{"className":614},[],[616],{"type":30,"value":617},"TAKE",{"type":30,"value":619}," (Excel 365) returns the first N rows of the sorted spill.",{"type":25,"tag":26,"props":621,"children":622},{},[623],{"type":30,"value":624},"For Excel 2021 without TAKE:",{"type":25,"tag":59,"props":626,"children":628},{"className":61,"code":627,"language":6,"meta":8,"style":8},"=INDEX(SORT(A2:D100, 4, -1), SEQUENCE(10), {1,2,3,4})\n",[629],{"type":25,"tag":50,"props":630,"children":631},{"__ignoreMap":8},[632],{"type":25,"tag":68,"props":633,"children":634},{"class":70,"line":71},[635],{"type":25,"tag":68,"props":636,"children":637},{},[638],{"type":30,"value":627},{"type":25,"tag":33,"props":640,"children":642},{"id":641},"compatibility-notes",[643],{"type":30,"value":644},"Compatibility Notes",{"type":25,"tag":646,"props":647,"children":648},"table",{},[649,683],{"type":25,"tag":650,"props":651,"children":652},"thead",{},[653],{"type":25,"tag":654,"props":655,"children":656},"tr",{},[657,664,668,673,678],{"type":25,"tag":658,"props":659,"children":661},"th",{"align":660},"left",[662],{"type":30,"value":663},"Function",{"type":25,"tag":658,"props":665,"children":666},{"align":660},[667],{"type":30,"value":20},{"type":25,"tag":658,"props":669,"children":670},{"align":660},[671],{"type":30,"value":672},"Excel 2021",{"type":25,"tag":658,"props":674,"children":675},{"align":660},[676],{"type":30,"value":677},"Excel 2019",{"type":25,"tag":658,"props":679,"children":680},{"align":660},[681],{"type":30,"value":682},"Google Sheets",{"type":25,"tag":684,"props":685,"children":686},"tbody",{},[687,716,742,768,794,821],{"type":25,"tag":654,"props":688,"children":689},{},[690,698,703,707,712],{"type":25,"tag":691,"props":692,"children":693},"td",{"align":660},[694],{"type":25,"tag":121,"props":695,"children":696},{},[697],{"type":30,"value":16},{"type":25,"tag":691,"props":699,"children":700},{"align":660},[701],{"type":30,"value":702},"✅ Supported",{"type":25,"tag":691,"props":704,"children":705},{"align":660},[706],{"type":30,"value":702},{"type":25,"tag":691,"props":708,"children":709},{"align":660},[710],{"type":30,"value":711},"❌ Not available",{"type":25,"tag":691,"props":713,"children":714},{"align":660},[715],{"type":30,"value":702},{"type":25,"tag":654,"props":717,"children":718},{},[719,726,730,734,738],{"type":25,"tag":691,"props":720,"children":721},{"align":660},[722],{"type":25,"tag":121,"props":723,"children":724},{},[725],{"type":30,"value":17},{"type":25,"tag":691,"props":727,"children":728},{"align":660},[729],{"type":30,"value":702},{"type":25,"tag":691,"props":731,"children":732},{"align":660},[733],{"type":30,"value":702},{"type":25,"tag":691,"props":735,"children":736},{"align":660},[737],{"type":30,"value":711},{"type":25,"tag":691,"props":739,"children":740},{"align":660},[741],{"type":30,"value":702},{"type":25,"tag":654,"props":743,"children":744},{},[745,752,756,760,764],{"type":25,"tag":691,"props":746,"children":747},{"align":660},[748],{"type":25,"tag":121,"props":749,"children":750},{},[751],{"type":30,"value":18},{"type":25,"tag":691,"props":753,"children":754},{"align":660},[755],{"type":30,"value":702},{"type":25,"tag":691,"props":757,"children":758},{"align":660},[759],{"type":30,"value":702},{"type":25,"tag":691,"props":761,"children":762},{"align":660},[763],{"type":30,"value":711},{"type":25,"tag":691,"props":765,"children":766},{"align":660},[767],{"type":30,"value":702},{"type":25,"tag":654,"props":769,"children":770},{},[771,778,782,786,790],{"type":25,"tag":691,"props":772,"children":773},{"align":660},[774],{"type":25,"tag":121,"props":775,"children":776},{},[777],{"type":30,"value":19},{"type":25,"tag":691,"props":779,"children":780},{"align":660},[781],{"type":30,"value":702},{"type":25,"tag":691,"props":783,"children":784},{"align":660},[785],{"type":30,"value":702},{"type":25,"tag":691,"props":787,"children":788},{"align":660},[789],{"type":30,"value":711},{"type":25,"tag":691,"props":791,"children":792},{"align":660},[793],{"type":30,"value":702},{"type":25,"tag":654,"props":795,"children":796},{},[797,804,808,812,816],{"type":25,"tag":691,"props":798,"children":799},{"align":660},[800],{"type":25,"tag":121,"props":801,"children":802},{},[803],{"type":30,"value":617},{"type":25,"tag":691,"props":805,"children":806},{"align":660},[807],{"type":30,"value":702},{"type":25,"tag":691,"props":809,"children":810},{"align":660},[811],{"type":30,"value":711},{"type":25,"tag":691,"props":813,"children":814},{"align":660},[815],{"type":30,"value":711},{"type":25,"tag":691,"props":817,"children":818},{"align":660},[819],{"type":30,"value":820},"✅ Supported (2023+)",{"type":25,"tag":654,"props":822,"children":823},{},[824,831,835,839,843],{"type":25,"tag":691,"props":825,"children":826},{"align":660},[827],{"type":25,"tag":121,"props":828,"children":829},{},[830],{"type":30,"value":335},{"type":25,"tag":691,"props":832,"children":833},{"align":660},[834],{"type":30,"value":702},{"type":25,"tag":691,"props":836,"children":837},{"align":660},[838],{"type":30,"value":702},{"type":25,"tag":691,"props":840,"children":841},{"align":660},[842],{"type":30,"value":711},{"type":25,"tag":691,"props":844,"children":845},{"align":660},[846],{"type":30,"value":702},{"type":25,"tag":26,"props":848,"children":849},{},[850,852,858],{"type":30,"value":851},"For Excel 2019 backward compatibility, use the classic ",{"type":25,"tag":50,"props":853,"children":855},{"className":854},[],[856],{"type":30,"value":857},"INDEX \u002F MATCH",{"type":30,"value":859}," pattern or helper columns instead of dynamic array spills.",{"type":25,"tag":861,"props":862,"children":863},"style",{},[864],{"type":30,"value":865},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":8,"searchDepth":80,"depth":80,"links":867},[868,869,874,877,880,883,884],{"id":35,"depth":80,"text":38},{"id":89,"depth":80,"text":92,"children":870},[871,873],{"id":166,"depth":872,"text":169},3,{"id":220,"depth":872,"text":223},{"id":265,"depth":80,"text":268,"children":875},[876],{"id":323,"depth":872,"text":326},{"id":359,"depth":80,"text":362,"children":878},[879],{"id":424,"depth":872,"text":427},{"id":482,"depth":80,"text":485,"children":881},[882],{"id":540,"depth":872,"text":543},{"id":584,"depth":80,"text":587},{"id":641,"depth":80,"text":644},"markdown","content:excel:dynamic-arrays-filter-sort-unique-sequence.md","content","excel\u002Fdynamic-arrays-filter-sort-unique-sequence.md","excel\u002Fdynamic-arrays-filter-sort-unique-sequence","md",{"_path":892,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":893,"description":894,"category":11,"date":12,"readingTime":895,"tags":896,"body":900,"_type":885,"_id":1720,"_source":887,"_file":1721,"_stem":1722,"_extension":890},"\u002Fexcel\u002Fpivot-tables-field-guide","Excel Pivot Tables: A Beginner to Intermediate Field Guide","Learn to create, configure, and refresh Pivot Tables in Microsoft Excel. This guide covers field layout, calculated fields, grouping by date, slicers, and avoiding common data source errors.",9,[897,11,898,899],"Pivot Tables","data analysis","reporting",{"type":22,"children":901,"toc":1708},[902,907,913,918,962,975,981,1023,1034,1040,1151,1157,1167,1238,1243,1249,1261,1285,1297,1318,1324,1329,1338,1388,1393,1407,1413,1418,1449,1468,1474,1486,1544,1550,1669,1675],{"type":25,"tag":26,"props":903,"children":904},{},[905],{"type":30,"value":906},"Pivot Tables are the fastest way to summarize large, flat datasets without writing a single formula. A well-structured source table plus a correctly configured Pivot Table can replace hours of manual SUMIFS nesting and ad-hoc calculations.",{"type":25,"tag":33,"props":908,"children":910},{"id":909},"what-makes-a-good-source-table",[911],{"type":30,"value":912},"What Makes a Good Source Table?",{"type":25,"tag":26,"props":914,"children":915},{},[916],{"type":30,"value":917},"Before inserting a Pivot Table, your data must meet these requirements:",{"type":25,"tag":919,"props":920,"children":921},"ul",{},[922,932,942,952],{"type":25,"tag":438,"props":923,"children":924},{},[925,930],{"type":25,"tag":121,"props":926,"children":927},{},[928],{"type":30,"value":929},"One header row",{"type":30,"value":931}," — No merged cells, no blank header cells.",{"type":25,"tag":438,"props":933,"children":934},{},[935,940],{"type":25,"tag":121,"props":936,"children":937},{},[938],{"type":30,"value":939},"No blank rows",{"type":30,"value":941}," within the data range.",{"type":25,"tag":438,"props":943,"children":944},{},[945,950],{"type":25,"tag":121,"props":946,"children":947},{},[948],{"type":30,"value":949},"Each column contains one type of data",{"type":30,"value":951}," — Mixing dates with text in the same column breaks grouping.",{"type":25,"tag":438,"props":953,"children":954},{},[955,960],{"type":25,"tag":121,"props":956,"children":957},{},[958],{"type":30,"value":959},"No subtotal rows",{"type":30,"value":961}," within the data — Pivot Tables add their own totals.",{"type":25,"tag":26,"props":963,"children":964},{},[965,967,973],{"type":30,"value":966},"The most reliable approach is to convert your range to a named Excel Table (",{"type":25,"tag":50,"props":968,"children":970},{"className":969},[],[971],{"type":30,"value":972},"Ctrl + T",{"type":30,"value":974},") first. Tables auto-expand, and Pivot Tables linked to them refresh to include new rows automatically.",{"type":25,"tag":33,"props":976,"children":978},{"id":977},"inserting-your-first-pivot-table",[979],{"type":30,"value":980},"Inserting Your First Pivot Table",{"type":25,"tag":434,"props":982,"children":983},{},[984,989,1000,1012],{"type":25,"tag":438,"props":985,"children":986},{},[987],{"type":30,"value":988},"Click anywhere inside your data range or Table.",{"type":25,"tag":438,"props":990,"children":991},{},[992,994,999],{"type":30,"value":993},"Go to ",{"type":25,"tag":121,"props":995,"children":996},{},[997],{"type":30,"value":998},"Insert → PivotTable",{"type":30,"value":458},{"type":25,"tag":438,"props":1001,"children":1002},{},[1003,1005,1010],{"type":30,"value":1004},"Choose ",{"type":25,"tag":121,"props":1006,"children":1007},{},[1008],{"type":30,"value":1009},"New Worksheet",{"type":30,"value":1011}," for a clean working area.",{"type":25,"tag":438,"props":1013,"children":1014},{},[1015,1017,1022],{"type":30,"value":1016},"Click ",{"type":25,"tag":121,"props":1018,"children":1019},{},[1020],{"type":30,"value":1021},"OK",{"type":30,"value":458},{"type":25,"tag":26,"props":1024,"children":1025},{},[1026,1027,1032],{"type":30,"value":146},{"type":25,"tag":121,"props":1028,"children":1029},{},[1030],{"type":30,"value":1031},"PivotTable Field List",{"type":30,"value":1033}," opens on the right.",{"type":25,"tag":33,"props":1035,"children":1037},{"id":1036},"understanding-the-four-drop-zones",[1038],{"type":30,"value":1039},"Understanding the Four Drop Zones",{"type":25,"tag":646,"props":1041,"children":1042},{},[1043,1064],{"type":25,"tag":650,"props":1044,"children":1045},{},[1046],{"type":25,"tag":654,"props":1047,"children":1048},{},[1049,1054,1059],{"type":25,"tag":658,"props":1050,"children":1051},{},[1052],{"type":30,"value":1053},"Zone",{"type":25,"tag":658,"props":1055,"children":1056},{},[1057],{"type":30,"value":1058},"Purpose",{"type":25,"tag":658,"props":1060,"children":1061},{},[1062],{"type":30,"value":1063},"Example",{"type":25,"tag":684,"props":1065,"children":1066},{},[1067,1088,1109,1130],{"type":25,"tag":654,"props":1068,"children":1069},{},[1070,1078,1083],{"type":25,"tag":691,"props":1071,"children":1072},{},[1073],{"type":25,"tag":121,"props":1074,"children":1075},{},[1076],{"type":30,"value":1077},"Filters",{"type":25,"tag":691,"props":1079,"children":1080},{},[1081],{"type":30,"value":1082},"Adds a report filter above the table",{"type":25,"tag":691,"props":1084,"children":1085},{},[1086],{"type":30,"value":1087},"Filter entire report by Year",{"type":25,"tag":654,"props":1089,"children":1090},{},[1091,1099,1104],{"type":25,"tag":691,"props":1092,"children":1093},{},[1094],{"type":25,"tag":121,"props":1095,"children":1096},{},[1097],{"type":30,"value":1098},"Columns",{"type":25,"tag":691,"props":1100,"children":1101},{},[1102],{"type":30,"value":1103},"Creates column headers across the top",{"type":25,"tag":691,"props":1105,"children":1106},{},[1107],{"type":30,"value":1108},"Show months as columns",{"type":25,"tag":654,"props":1110,"children":1111},{},[1112,1120,1125],{"type":25,"tag":691,"props":1113,"children":1114},{},[1115],{"type":25,"tag":121,"props":1116,"children":1117},{},[1118],{"type":30,"value":1119},"Rows",{"type":25,"tag":691,"props":1121,"children":1122},{},[1123],{"type":30,"value":1124},"Creates row labels down the left",{"type":25,"tag":691,"props":1126,"children":1127},{},[1128],{"type":30,"value":1129},"Show products or regions",{"type":25,"tag":654,"props":1131,"children":1132},{},[1133,1141,1146],{"type":25,"tag":691,"props":1134,"children":1135},{},[1136],{"type":25,"tag":121,"props":1137,"children":1138},{},[1139],{"type":30,"value":1140},"Values",{"type":25,"tag":691,"props":1142,"children":1143},{},[1144],{"type":30,"value":1145},"The numbers being summarized",{"type":25,"tag":691,"props":1147,"children":1148},{},[1149],{"type":30,"value":1150},"Sum, Count, Average of Revenue",{"type":25,"tag":33,"props":1152,"children":1154},{"id":1153},"building-a-sales-summary-report",[1155],{"type":30,"value":1156},"Building a Sales Summary Report",{"type":25,"tag":26,"props":1158,"children":1159},{},[1160,1165],{"type":25,"tag":121,"props":1161,"children":1162},{},[1163],{"type":30,"value":1164},"Goal:",{"type":30,"value":1166}," Show total revenue by Region (rows) and Quarter (columns).",{"type":25,"tag":434,"props":1168,"children":1169},{},[1170,1188,1204,1219],{"type":25,"tag":438,"props":1171,"children":1172},{},[1173,1175,1180,1182,1186],{"type":30,"value":1174},"Drag ",{"type":25,"tag":121,"props":1176,"children":1177},{},[1178],{"type":30,"value":1179},"Region",{"type":30,"value":1181}," to the ",{"type":25,"tag":121,"props":1183,"children":1184},{},[1185],{"type":30,"value":1119},{"type":30,"value":1187}," area.",{"type":25,"tag":438,"props":1189,"children":1190},{},[1191,1192,1197,1198,1202],{"type":30,"value":1174},{"type":25,"tag":121,"props":1193,"children":1194},{},[1195],{"type":30,"value":1196},"Date",{"type":30,"value":1181},{"type":25,"tag":121,"props":1199,"children":1200},{},[1201],{"type":30,"value":1098},{"type":30,"value":1203}," area — Excel will auto-group by Year\u002FQuarter\u002FMonth.",{"type":25,"tag":438,"props":1205,"children":1206},{},[1207,1208,1213,1214,1218],{"type":30,"value":1174},{"type":25,"tag":121,"props":1209,"children":1210},{},[1211],{"type":30,"value":1212},"Revenue",{"type":30,"value":1181},{"type":25,"tag":121,"props":1215,"children":1216},{},[1217],{"type":30,"value":1140},{"type":30,"value":1187},{"type":25,"tag":438,"props":1220,"children":1221},{},[1222,1224,1229,1231,1236],{"type":30,"value":1223},"Right-click the date column header → ",{"type":25,"tag":121,"props":1225,"children":1226},{},[1227],{"type":30,"value":1228},"Group",{"type":30,"value":1230}," → Select ",{"type":25,"tag":121,"props":1232,"children":1233},{},[1234],{"type":30,"value":1235},"Quarters",{"type":30,"value":1237}," only.",{"type":25,"tag":26,"props":1239,"children":1240},{},[1241],{"type":30,"value":1242},"Your table now shows exactly how each region performed each quarter.",{"type":25,"tag":33,"props":1244,"children":1246},{"id":1245},"changing-the-value-calculation",[1247],{"type":30,"value":1248},"Changing the Value Calculation",{"type":25,"tag":26,"props":1250,"children":1251},{},[1252,1254,1259],{"type":30,"value":1253},"By default, numeric fields use ",{"type":25,"tag":121,"props":1255,"children":1256},{},[1257],{"type":30,"value":1258},"Sum",{"type":30,"value":1260},". To change this:",{"type":25,"tag":434,"props":1262,"children":1263},{},[1264,1269,1280],{"type":25,"tag":438,"props":1265,"children":1266},{},[1267],{"type":30,"value":1268},"Click anywhere in the Values area.",{"type":25,"tag":438,"props":1270,"children":1271},{},[1272,1274,1279],{"type":30,"value":1273},"Select ",{"type":25,"tag":121,"props":1275,"children":1276},{},[1277],{"type":30,"value":1278},"Value Field Settings",{"type":30,"value":458},{"type":25,"tag":438,"props":1281,"children":1282},{},[1283],{"type":30,"value":1284},"Choose from: Sum, Count, Average, Max, Min, Product, StdDev.",{"type":25,"tag":26,"props":1286,"children":1287},{},[1288,1290,1295],{"type":30,"value":1289},"To show ",{"type":25,"tag":121,"props":1291,"children":1292},{},[1293],{"type":30,"value":1294},"percentage of column total",{"type":30,"value":1296}," (useful for market share reports):",{"type":25,"tag":919,"props":1298,"children":1299},{},[1300],{"type":25,"tag":438,"props":1301,"children":1302},{},[1303,1305,1310,1312,1317],{"type":30,"value":1304},"In Value Field Settings → ",{"type":25,"tag":121,"props":1306,"children":1307},{},[1308],{"type":30,"value":1309},"Show Values As",{"type":30,"value":1311}," → ",{"type":25,"tag":121,"props":1313,"children":1314},{},[1315],{"type":30,"value":1316},"% of Column Total",{"type":30,"value":458},{"type":25,"tag":33,"props":1319,"children":1321},{"id":1320},"adding-calculated-fields",[1322],{"type":30,"value":1323},"Adding Calculated Fields",{"type":25,"tag":26,"props":1325,"children":1326},{},[1327],{"type":30,"value":1328},"Calculated Fields let you perform math between fields inside the Pivot Table without altering the source data.",{"type":25,"tag":26,"props":1330,"children":1331},{},[1332,1336],{"type":25,"tag":121,"props":1333,"children":1334},{},[1335],{"type":30,"value":125},{"type":30,"value":1337}," Calculate Profit Margin from Revenue and Cost columns.",{"type":25,"tag":434,"props":1339,"children":1340},{},[1341,1346,1356,1368,1379],{"type":25,"tag":438,"props":1342,"children":1343},{},[1344],{"type":30,"value":1345},"Click inside the Pivot Table.",{"type":25,"tag":438,"props":1347,"children":1348},{},[1349,1350,1355],{"type":30,"value":993},{"type":25,"tag":121,"props":1351,"children":1352},{},[1353],{"type":30,"value":1354},"PivotTable Analyze → Fields, Items & Sets → Calculated Field",{"type":30,"value":458},{"type":25,"tag":438,"props":1357,"children":1358},{},[1359,1361,1367],{"type":30,"value":1360},"Name it ",{"type":25,"tag":50,"props":1362,"children":1364},{"className":1363},[],[1365],{"type":30,"value":1366},"Profit Margin",{"type":30,"value":458},{"type":25,"tag":438,"props":1369,"children":1370},{},[1371,1373],{"type":30,"value":1372},"Enter the formula: ",{"type":25,"tag":50,"props":1374,"children":1376},{"className":1375},[],[1377],{"type":30,"value":1378},"= (Revenue - Cost) \u002F Revenue",{"type":25,"tag":438,"props":1380,"children":1381},{},[1382,1383,1387],{"type":30,"value":1016},{"type":25,"tag":121,"props":1384,"children":1385},{},[1386],{"type":30,"value":1021},{"type":30,"value":458},{"type":25,"tag":26,"props":1389,"children":1390},{},[1391],{"type":30,"value":1392},"The new column appears automatically in the table.",{"type":25,"tag":1394,"props":1395,"children":1396},"blockquote",{},[1397],{"type":25,"tag":26,"props":1398,"children":1399},{},[1400,1405],{"type":25,"tag":121,"props":1401,"children":1402},{},[1403],{"type":30,"value":1404},"Caution:",{"type":30,"value":1406}," Calculated Fields use the Sum of each field in their calculation, which can produce misleading averages. For ratios and percentages, always validate the result against a manual spot-check.",{"type":25,"tag":33,"props":1408,"children":1410},{"id":1409},"using-slicers-for-interactive-filtering",[1411],{"type":30,"value":1412},"Using Slicers for Interactive Filtering",{"type":25,"tag":26,"props":1414,"children":1415},{},[1416],{"type":30,"value":1417},"Slicers are visual filter buttons that make Pivot Tables dashboard-ready.",{"type":25,"tag":434,"props":1419,"children":1420},{},[1421,1425,1435,1440],{"type":25,"tag":438,"props":1422,"children":1423},{},[1424],{"type":30,"value":1345},{"type":25,"tag":438,"props":1426,"children":1427},{},[1428,1429,1434],{"type":30,"value":993},{"type":25,"tag":121,"props":1430,"children":1431},{},[1432],{"type":30,"value":1433},"PivotTable Analyze → Insert Slicer",{"type":30,"value":458},{"type":25,"tag":438,"props":1436,"children":1437},{},[1438],{"type":30,"value":1439},"Choose the fields to slice by (e.g., Region, Product Category).",{"type":25,"tag":438,"props":1441,"children":1442},{},[1443,1444,1448],{"type":30,"value":1016},{"type":25,"tag":121,"props":1445,"children":1446},{},[1447],{"type":30,"value":1021},{"type":30,"value":458},{"type":25,"tag":26,"props":1450,"children":1451},{},[1452,1454,1459,1461,1466],{"type":30,"value":1453},"Slicers appear as floating panels. One Slicer can control ",{"type":25,"tag":121,"props":1455,"children":1456},{},[1457],{"type":30,"value":1458},"multiple Pivot Tables",{"type":30,"value":1460}," on the same sheet — right-click the Slicer → ",{"type":25,"tag":121,"props":1462,"children":1463},{},[1464],{"type":30,"value":1465},"Report Connections",{"type":30,"value":1467}," → check all tables to link.",{"type":25,"tag":33,"props":1469,"children":1471},{"id":1470},"refreshing-data",[1472],{"type":30,"value":1473},"Refreshing Data",{"type":25,"tag":26,"props":1475,"children":1476},{},[1477,1479,1484],{"type":30,"value":1478},"Pivot Tables do ",{"type":25,"tag":121,"props":1480,"children":1481},{},[1482],{"type":30,"value":1483},"not",{"type":30,"value":1485}," update automatically when source data changes. You must refresh:",{"type":25,"tag":919,"props":1487,"children":1488},{},[1489,1505,1521],{"type":25,"tag":438,"props":1490,"children":1491},{},[1492,1497,1499,1504],{"type":25,"tag":121,"props":1493,"children":1494},{},[1495],{"type":30,"value":1496},"Single table:",{"type":30,"value":1498}," Right-click → ",{"type":25,"tag":121,"props":1500,"children":1501},{},[1502],{"type":30,"value":1503},"Refresh",{"type":30,"value":458},{"type":25,"tag":438,"props":1506,"children":1507},{},[1508,1513,1515,1520],{"type":25,"tag":121,"props":1509,"children":1510},{},[1511],{"type":30,"value":1512},"All tables:",{"type":30,"value":1514}," ",{"type":25,"tag":121,"props":1516,"children":1517},{},[1518],{"type":30,"value":1519},"PivotTable Analyze → Refresh → Refresh All",{"type":30,"value":458},{"type":25,"tag":438,"props":1522,"children":1523},{},[1524,1529,1531,1536,1538,1543],{"type":25,"tag":121,"props":1525,"children":1526},{},[1527],{"type":30,"value":1528},"On file open:",{"type":30,"value":1530}," PivotTable Analyze → PivotTable Options → ",{"type":25,"tag":121,"props":1532,"children":1533},{},[1534],{"type":30,"value":1535},"Data tab",{"type":30,"value":1537}," → check ",{"type":25,"tag":121,"props":1539,"children":1540},{},[1541],{"type":30,"value":1542},"Refresh data when opening the file",{"type":30,"value":458},{"type":25,"tag":33,"props":1545,"children":1547},{"id":1546},"common-problems-and-fixes",[1548],{"type":30,"value":1549},"Common Problems and Fixes",{"type":25,"tag":646,"props":1551,"children":1552},{},[1553,1574],{"type":25,"tag":650,"props":1554,"children":1555},{},[1556],{"type":25,"tag":654,"props":1557,"children":1558},{},[1559,1564,1569],{"type":25,"tag":658,"props":1560,"children":1561},{},[1562],{"type":30,"value":1563},"Problem",{"type":25,"tag":658,"props":1565,"children":1566},{},[1567],{"type":30,"value":1568},"Root Cause",{"type":25,"tag":658,"props":1570,"children":1571},{},[1572],{"type":30,"value":1573},"Solution",{"type":25,"tag":684,"props":1575,"children":1576},{},[1577,1595,1613,1651],{"type":25,"tag":654,"props":1578,"children":1579},{},[1580,1585,1590],{"type":25,"tag":691,"props":1581,"children":1582},{},[1583],{"type":30,"value":1584},"Grouping option is greyed out",{"type":25,"tag":691,"props":1586,"children":1587},{},[1588],{"type":30,"value":1589},"Mixed data types in the date column",{"type":25,"tag":691,"props":1591,"children":1592},{},[1593],{"type":30,"value":1594},"Clean column to contain only real dates",{"type":25,"tag":654,"props":1596,"children":1597},{},[1598,1603,1608],{"type":25,"tag":691,"props":1599,"children":1600},{},[1601],{"type":30,"value":1602},"New data not appearing",{"type":25,"tag":691,"props":1604,"children":1605},{},[1606],{"type":30,"value":1607},"Range doesn't include new rows",{"type":25,"tag":691,"props":1609,"children":1610},{},[1611],{"type":30,"value":1612},"Convert source to a Table, then refresh",{"type":25,"tag":654,"props":1614,"children":1615},{},[1616,1627,1632],{"type":25,"tag":691,"props":1617,"children":1618},{},[1619,1625],{"type":25,"tag":50,"props":1620,"children":1622},{"className":1621},[],[1623],{"type":30,"value":1624},"#VALUE!",{"type":30,"value":1626}," in calculated field",{"type":25,"tag":691,"props":1628,"children":1629},{},[1630],{"type":30,"value":1631},"Division by zero or empty cells",{"type":25,"tag":691,"props":1633,"children":1634},{},[1635,1637,1643,1645],{"type":30,"value":1636},"Add ",{"type":25,"tag":50,"props":1638,"children":1640},{"className":1639},[],[1641],{"type":30,"value":1642},"IF",{"type":30,"value":1644}," guard: ",{"type":25,"tag":50,"props":1646,"children":1648},{"className":1647},[],[1649],{"type":30,"value":1650},"=IF(Revenue=0,0,(Revenue-Cost)\u002FRevenue)",{"type":25,"tag":654,"props":1652,"children":1653},{},[1654,1659,1664],{"type":25,"tag":691,"props":1655,"children":1656},{},[1657],{"type":30,"value":1658},"Grand Total is wrong",{"type":25,"tag":691,"props":1660,"children":1661},{},[1662],{"type":30,"value":1663},"Calculated field averaging incorrectly",{"type":25,"tag":691,"props":1665,"children":1666},{},[1667],{"type":30,"value":1668},"Validate against SUMPRODUCT formula",{"type":25,"tag":33,"props":1670,"children":1672},{"id":1671},"formatting-tips",[1673],{"type":30,"value":1674},"Formatting Tips",{"type":25,"tag":919,"props":1676,"children":1677},{},[1678,1688,1698],{"type":25,"tag":438,"props":1679,"children":1680},{},[1681,1686],{"type":25,"tag":121,"props":1682,"children":1683},{},[1684],{"type":30,"value":1685},"Number format in values:",{"type":30,"value":1687}," Right-click any value → Format Cells → choose Currency or Percentage. This persists across refreshes.",{"type":25,"tag":438,"props":1689,"children":1690},{},[1691,1696],{"type":25,"tag":121,"props":1692,"children":1693},{},[1694],{"type":30,"value":1695},"Remove \"Sum of\" prefix:",{"type":30,"value":1697}," In Value Field Settings, rename the field (e.g., change \"Sum of Revenue\" to \"Revenue\").",{"type":25,"tag":438,"props":1699,"children":1700},{},[1701,1706],{"type":25,"tag":121,"props":1702,"children":1703},{},[1704],{"type":30,"value":1705},"Compact vs Outline layout:",{"type":30,"value":1707}," PivotTable Design → Report Layout — use Outline for readability when there are multiple row fields.",{"title":8,"searchDepth":80,"depth":80,"links":1709},[1710,1711,1712,1713,1714,1715,1716,1717,1718,1719],{"id":909,"depth":80,"text":912},{"id":977,"depth":80,"text":980},{"id":1036,"depth":80,"text":1039},{"id":1153,"depth":80,"text":1156},{"id":1245,"depth":80,"text":1248},{"id":1320,"depth":80,"text":1323},{"id":1409,"depth":80,"text":1412},{"id":1470,"depth":80,"text":1473},{"id":1546,"depth":80,"text":1549},{"id":1671,"depth":80,"text":1674},"content:excel:pivot-tables-field-guide.md","excel\u002Fpivot-tables-field-guide.md","excel\u002Fpivot-tables-field-guide",{"_path":1724,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":1725,"description":1726,"category":11,"date":12,"readingTime":1727,"tags":1728,"body":1733,"_type":885,"_id":2481,"_source":887,"_file":2482,"_stem":2483,"_extension":890},"\u002Fexcel\u002Fpower-query-basics-guide","Excel Power Query Basics: Import, Clean, and Transform Data Without Formulas","Learn how to use Power Query in Microsoft Excel to import data from files and web sources, clean messy datasets, reshape tables, and create refreshable reports without formulas.",10,[1729,11,1730,1731,1732],"Power Query","data cleaning","ETL","data transformation",{"type":22,"children":1734,"toc":2462},[1735,1740,1745,1751,1786,1804,1816,1822,1830,1856,1862,1901,1922,1928,1933,2018,2024,2030,2038,2043,2049,2061,2072,2106,2112,2117,2133,2138,2144,2149,2174,2187,2193,2198,2208,2214,2219,2225,2241,2257,2262,2268,2273,2307,2313,2324,2347,2353,2358,2379,2390,2396,2453,2458],{"type":25,"tag":26,"props":1736,"children":1737},{},[1738],{"type":30,"value":1739},"Power Query is a built-in data transformation engine available in Excel 2016 and later (called \"Get & Transform Data\" in the ribbon). It lets you connect to data sources, clean and reshape data using a graphical interface, and load results into an Excel worksheet or Data Model — all without writing a single formula in the sheet.",{"type":25,"tag":26,"props":1741,"children":1742},{},[1743],{"type":30,"value":1744},"Every transformation step is recorded and can be re-applied automatically whenever the source data refreshes.",{"type":25,"tag":33,"props":1746,"children":1748},{"id":1747},"why-power-query-instead-of-formulas",[1749],{"type":30,"value":1750},"Why Power Query Instead of Formulas?",{"type":25,"tag":26,"props":1752,"children":1753},{},[1754,1756,1762,1764,1770,1771,1777,1778,1784],{"type":30,"value":1755},"Traditional formula-based cleaning (using ",{"type":25,"tag":50,"props":1757,"children":1759},{"className":1758},[],[1760],{"type":30,"value":1761},"TRIM",{"type":30,"value":1763},", ",{"type":25,"tag":50,"props":1765,"children":1767},{"className":1766},[],[1768],{"type":30,"value":1769},"SUBSTITUTE",{"type":30,"value":1763},{"type":25,"tag":50,"props":1772,"children":1774},{"className":1773},[],[1775],{"type":30,"value":1776},"LEFT",{"type":30,"value":1763},{"type":25,"tag":50,"props":1779,"children":1781},{"className":1780},[],[1782],{"type":30,"value":1783},"TEXT",{"type":30,"value":1785},") has key drawbacks:",{"type":25,"tag":919,"props":1787,"children":1788},{},[1789,1794,1799],{"type":25,"tag":438,"props":1790,"children":1791},{},[1792],{"type":30,"value":1793},"Results are volatile — changing source data requires re-checking every formula.",{"type":25,"tag":438,"props":1795,"children":1796},{},[1797],{"type":30,"value":1798},"Steps are invisible — the chain of transformations is not documented.",{"type":25,"tag":438,"props":1800,"children":1801},{},[1802],{"type":30,"value":1803},"Performance degrades on large files — thousands of formula cells slow recalculation.",{"type":25,"tag":26,"props":1805,"children":1806},{},[1807,1809,1814],{"type":30,"value":1808},"Power Query solves all three problems. Steps are listed in the ",{"type":25,"tag":121,"props":1810,"children":1811},{},[1812],{"type":30,"value":1813},"Applied Steps",{"type":30,"value":1815}," panel, transformations run outside the Excel grid, and refreshing re-runs the entire pipeline automatically.",{"type":25,"tag":33,"props":1817,"children":1819},{"id":1818},"opening-power-query",[1820],{"type":30,"value":1821},"Opening Power Query",{"type":25,"tag":26,"props":1823,"children":1824},{},[1825],{"type":25,"tag":121,"props":1826,"children":1827},{},[1828],{"type":30,"value":1829},"From Excel ribbon:",{"type":25,"tag":919,"props":1831,"children":1832},{},[1833,1844],{"type":25,"tag":438,"props":1834,"children":1835},{},[1836,1837,1842],{"type":30,"value":993},{"type":25,"tag":121,"props":1838,"children":1839},{},[1840],{"type":30,"value":1841},"Data → Get Data → From File → From Workbook",{"type":30,"value":1843}," (or From Text\u002FCSV, From Web, etc.)",{"type":25,"tag":438,"props":1845,"children":1846},{},[1847,1849,1854],{"type":30,"value":1848},"Alternatively: ",{"type":25,"tag":121,"props":1850,"children":1851},{},[1852],{"type":30,"value":1853},"Data → Get Data → Launch Power Query Editor",{"type":30,"value":1855}," to open the editor directly.",{"type":25,"tag":33,"props":1857,"children":1859},{"id":1858},"importing-a-csv-or-text-file",[1860],{"type":30,"value":1861},"Importing a CSV or Text File",{"type":25,"tag":434,"props":1863,"children":1864},{},[1865,1874,1885,1890],{"type":25,"tag":438,"props":1866,"children":1867},{},[1868,1873],{"type":25,"tag":121,"props":1869,"children":1870},{},[1871],{"type":30,"value":1872},"Data → Get Data → From File → From Text\u002FCSV",{"type":30,"value":458},{"type":25,"tag":438,"props":1875,"children":1876},{},[1877,1879,1884],{"type":30,"value":1878},"Browse to your file and click ",{"type":25,"tag":121,"props":1880,"children":1881},{},[1882],{"type":30,"value":1883},"Import",{"type":30,"value":458},{"type":25,"tag":438,"props":1886,"children":1887},{},[1888],{"type":30,"value":1889},"Power Query previews the data. Confirm the delimiter (comma, tab, semicolon).",{"type":25,"tag":438,"props":1891,"children":1892},{},[1893,1894,1899],{"type":30,"value":1016},{"type":25,"tag":121,"props":1895,"children":1896},{},[1897],{"type":30,"value":1898},"Transform Data",{"type":30,"value":1900}," to open the Power Query Editor.",{"type":25,"tag":1394,"props":1902,"children":1903},{},[1904],{"type":25,"tag":26,"props":1905,"children":1906},{},[1907,1909,1914,1916,1920],{"type":30,"value":1908},"If you click ",{"type":25,"tag":121,"props":1910,"children":1911},{},[1912],{"type":30,"value":1913},"Load",{"type":30,"value":1915}," directly, data goes straight to a worksheet. Always choose ",{"type":25,"tag":121,"props":1917,"children":1918},{},[1919],{"type":30,"value":1898},{"type":30,"value":1921}," first to inspect and clean.",{"type":25,"tag":33,"props":1923,"children":1925},{"id":1924},"the-power-query-editor-interface",[1926],{"type":30,"value":1927},"The Power Query Editor Interface",{"type":25,"tag":26,"props":1929,"children":1930},{},[1931],{"type":30,"value":1932},"The editor has four main areas:",{"type":25,"tag":646,"props":1934,"children":1935},{},[1936,1951],{"type":25,"tag":650,"props":1937,"children":1938},{},[1939],{"type":25,"tag":654,"props":1940,"children":1941},{},[1942,1947],{"type":25,"tag":658,"props":1943,"children":1944},{},[1945],{"type":30,"value":1946},"Area",{"type":25,"tag":658,"props":1948,"children":1949},{},[1950],{"type":30,"value":1058},{"type":25,"tag":684,"props":1952,"children":1953},{},[1954,1970,1986,2002],{"type":25,"tag":654,"props":1955,"children":1956},{},[1957,1965],{"type":25,"tag":691,"props":1958,"children":1959},{},[1960],{"type":25,"tag":121,"props":1961,"children":1962},{},[1963],{"type":30,"value":1964},"Formula Bar",{"type":25,"tag":691,"props":1966,"children":1967},{},[1968],{"type":30,"value":1969},"Shows the M formula for the current step",{"type":25,"tag":654,"props":1971,"children":1972},{},[1973,1981],{"type":25,"tag":691,"props":1974,"children":1975},{},[1976],{"type":25,"tag":121,"props":1977,"children":1978},{},[1979],{"type":30,"value":1980},"Query Settings (right panel)",{"type":25,"tag":691,"props":1982,"children":1983},{},[1984],{"type":30,"value":1985},"Lists all Applied Steps in order",{"type":25,"tag":654,"props":1987,"children":1988},{},[1989,1997],{"type":25,"tag":691,"props":1990,"children":1991},{},[1992],{"type":25,"tag":121,"props":1993,"children":1994},{},[1995],{"type":30,"value":1996},"Data Preview",{"type":25,"tag":691,"props":1998,"children":1999},{},[2000],{"type":30,"value":2001},"Shows transformed data",{"type":25,"tag":654,"props":2003,"children":2004},{},[2005,2013],{"type":25,"tag":691,"props":2006,"children":2007},{},[2008],{"type":25,"tag":121,"props":2009,"children":2010},{},[2011],{"type":30,"value":2012},"Ribbon",{"type":25,"tag":691,"props":2014,"children":2015},{},[2016],{"type":30,"value":2017},"All transformation tools",{"type":25,"tag":33,"props":2019,"children":2021},{"id":2020},"essential-cleaning-operations",[2022],{"type":30,"value":2023},"Essential Cleaning Operations",{"type":25,"tag":164,"props":2025,"children":2027},{"id":2026},"_1-removing-blank-rows",[2028],{"type":30,"value":2029},"1. Removing Blank Rows",{"type":25,"tag":26,"props":2031,"children":2032},{},[2033],{"type":25,"tag":121,"props":2034,"children":2035},{},[2036],{"type":30,"value":2037},"Home → Remove Rows → Remove Blank Rows",{"type":25,"tag":26,"props":2039,"children":2040},{},[2041],{"type":30,"value":2042},"This removes any row where every cell is null. For rows where only specific columns are blank, use column filters.",{"type":25,"tag":164,"props":2044,"children":2046},{"id":2045},"_2-trimming-whitespace-and-fixing-text-case",[2047],{"type":30,"value":2048},"2. Trimming Whitespace and Fixing Text Case",{"type":25,"tag":26,"props":2050,"children":2051},{},[2052,2054,2059],{"type":30,"value":2053},"Select the text column → ",{"type":25,"tag":121,"props":2055,"children":2056},{},[2057],{"type":30,"value":2058},"Transform → Format → Trim",{"type":30,"value":2060}," (removes leading\u002Ftrailing spaces).",{"type":25,"tag":26,"props":2062,"children":2063},{},[2064,2066,2071],{"type":30,"value":2065},"Also available under ",{"type":25,"tag":121,"props":2067,"children":2068},{},[2069],{"type":30,"value":2070},"Format",{"type":30,"value":57},{"type":25,"tag":919,"props":2073,"children":2074},{},[2075,2096],{"type":25,"tag":438,"props":2076,"children":2077},{},[2078,2083,2085,2090,2091],{"type":25,"tag":121,"props":2079,"children":2080},{},[2081],{"type":30,"value":2082},"UPPERCASE",{"type":30,"value":2084}," \u002F ",{"type":25,"tag":121,"props":2086,"children":2087},{},[2088],{"type":30,"value":2089},"lowercase",{"type":30,"value":2084},{"type":25,"tag":121,"props":2092,"children":2093},{},[2094],{"type":30,"value":2095},"Capitalize Each Word",{"type":25,"tag":438,"props":2097,"children":2098},{},[2099,2104],{"type":25,"tag":121,"props":2100,"children":2101},{},[2102],{"type":30,"value":2103},"Clean",{"type":30,"value":2105}," (removes non-printable characters — common in data exported from older systems)",{"type":25,"tag":164,"props":2107,"children":2109},{"id":2108},"_3-splitting-columns",[2110],{"type":30,"value":2111},"3. Splitting Columns",{"type":25,"tag":26,"props":2113,"children":2114},{},[2115],{"type":30,"value":2116},"Select a column containing combined values (e.g., \"First Last\" in one column):",{"type":25,"tag":26,"props":2118,"children":2119},{},[2120,2125,2127,2132],{"type":25,"tag":121,"props":2121,"children":2122},{},[2123],{"type":30,"value":2124},"Transform → Split Column → By Delimiter",{"type":30,"value":2126}," → choose Space → Split at ",{"type":25,"tag":121,"props":2128,"children":2129},{},[2130],{"type":30,"value":2131},"Each Occurrence of Delimiter",{"type":30,"value":458},{"type":25,"tag":26,"props":2134,"children":2135},{},[2136],{"type":30,"value":2137},"This creates two new columns automatically.",{"type":25,"tag":164,"props":2139,"children":2141},{"id":2140},"_4-changing-data-types",[2142],{"type":30,"value":2143},"4. Changing Data Types",{"type":25,"tag":26,"props":2145,"children":2146},{},[2147],{"type":30,"value":2148},"Power Query auto-detects types but is often wrong. Always verify:",{"type":25,"tag":434,"props":2150,"children":2151},{},[2152,2157,2162],{"type":25,"tag":438,"props":2153,"children":2154},{},[2155],{"type":30,"value":2156},"Click the type icon in the column header (ABC = text, 123 = number, calendar = date).",{"type":25,"tag":438,"props":2158,"children":2159},{},[2160],{"type":30,"value":2161},"Select the correct type.",{"type":25,"tag":438,"props":2163,"children":2164},{},[2165,2167,2172],{"type":30,"value":2166},"When asked about replacing the existing step, choose ",{"type":25,"tag":121,"props":2168,"children":2169},{},[2170],{"type":30,"value":2171},"Replace Current Step",{"type":30,"value":2173}," to keep the Applied Steps list clean.",{"type":25,"tag":1394,"props":2175,"children":2176},{},[2177],{"type":25,"tag":26,"props":2178,"children":2179},{},[2180,2185],{"type":25,"tag":121,"props":2181,"children":2182},{},[2183],{"type":30,"value":2184},"Common mistake:",{"type":30,"value":2186}," Leaving date columns as Text type breaks any downstream date filtering or grouping.",{"type":25,"tag":164,"props":2188,"children":2190},{"id":2189},"_5-filtering-rows",[2191],{"type":30,"value":2192},"5. Filtering Rows",{"type":25,"tag":26,"props":2194,"children":2195},{},[2196],{"type":30,"value":2197},"Click the dropdown arrow on any column header and use the filter checkboxes — identical to Excel table filters, but the filter is recorded as a step.",{"type":25,"tag":26,"props":2199,"children":2200},{},[2201,2203],{"type":30,"value":2202},"To filter using a formula condition: ",{"type":25,"tag":121,"props":2204,"children":2205},{},[2206],{"type":30,"value":2207},"Home → Keep Rows → Keep Rows Where…",{"type":25,"tag":164,"props":2209,"children":2211},{"id":2210},"_6-renaming-columns",[2212],{"type":30,"value":2213},"6. Renaming Columns",{"type":25,"tag":26,"props":2215,"children":2216},{},[2217],{"type":30,"value":2218},"Double-click any column header to rename it. Column names defined here become the headers in the loaded worksheet.",{"type":25,"tag":164,"props":2220,"children":2222},{"id":2221},"_7-adding-a-custom-column",[2223],{"type":30,"value":2224},"7. Adding a Custom Column",{"type":25,"tag":26,"props":2226,"children":2227},{},[2228,2233,2235,2240],{"type":25,"tag":121,"props":2229,"children":2230},{},[2231],{"type":30,"value":2232},"Add Column → Custom Column",{"type":30,"value":2234}," — opens a formula editor using the ",{"type":25,"tag":121,"props":2236,"children":2237},{},[2238],{"type":30,"value":2239},"M language",{"type":30,"value":57},{"type":25,"tag":59,"props":2242,"children":2246},{"className":2243,"code":2244,"language":2245,"meta":8,"style":8},"language-m shiki shiki-themes github-dark","= [Revenue] - [Cost]\n","m",[2247],{"type":25,"tag":50,"props":2248,"children":2249},{"__ignoreMap":8},[2250],{"type":25,"tag":68,"props":2251,"children":2252},{"class":70,"line":71},[2253],{"type":25,"tag":68,"props":2254,"children":2255},{},[2256],{"type":30,"value":2244},{"type":25,"tag":26,"props":2258,"children":2259},{},[2260],{"type":30,"value":2261},"This adds a new column called \"Custom\" (rename it after). M formula syntax uses square brackets for column references.",{"type":25,"tag":33,"props":2263,"children":2265},{"id":2264},"merging-two-queries-like-a-join",[2266],{"type":30,"value":2267},"Merging Two Queries (Like a JOIN)",{"type":25,"tag":26,"props":2269,"children":2270},{},[2271],{"type":30,"value":2272},"Power Query can JOIN tables — useful when data is split across multiple files.",{"type":25,"tag":434,"props":2274,"children":2275},{},[2276,2281,2292,2297,2302],{"type":25,"tag":438,"props":2277,"children":2278},{},[2279],{"type":30,"value":2280},"Load both datasets as separate queries.",{"type":25,"tag":438,"props":2282,"children":2283},{},[2284,2286,2291],{"type":30,"value":2285},"In one query: ",{"type":25,"tag":121,"props":2287,"children":2288},{},[2289],{"type":30,"value":2290},"Home → Merge Queries",{"type":30,"value":458},{"type":25,"tag":438,"props":2293,"children":2294},{},[2295],{"type":30,"value":2296},"Select the matching column in each table (like a primary\u002Fforeign key).",{"type":25,"tag":438,"props":2298,"children":2299},{},[2300],{"type":30,"value":2301},"Choose the Join Kind: Left Outer, Inner, Full Outer, etc.",{"type":25,"tag":438,"props":2303,"children":2304},{},[2305],{"type":30,"value":2306},"Expand the merged column to pull in specific fields.",{"type":25,"tag":33,"props":2308,"children":2310},{"id":2309},"loading-results-to-excel",[2311],{"type":30,"value":2312},"Loading Results to Excel",{"type":25,"tag":26,"props":2314,"children":2315},{},[2316,2318,2323],{"type":30,"value":2317},"When done transforming: ",{"type":25,"tag":121,"props":2319,"children":2320},{},[2321],{"type":30,"value":2322},"Home → Close & Load",{"type":30,"value":458},{"type":25,"tag":919,"props":2325,"children":2326},{},[2327,2337],{"type":25,"tag":438,"props":2328,"children":2329},{},[2330,2335],{"type":25,"tag":121,"props":2331,"children":2332},{},[2333],{"type":30,"value":2334},"Close & Load",{"type":30,"value":2336}," — loads to a new worksheet table.",{"type":25,"tag":438,"props":2338,"children":2339},{},[2340,2345],{"type":25,"tag":121,"props":2341,"children":2342},{},[2343],{"type":30,"value":2344},"Close & Load To…",{"type":30,"value":2346}," — lets you choose: Table, PivotTable, PivotChart, Connection Only (for Data Model).",{"type":25,"tag":33,"props":2348,"children":2350},{"id":2349},"refreshing-the-query",[2351],{"type":30,"value":2352},"Refreshing the Query",{"type":25,"tag":26,"props":2354,"children":2355},{},[2356],{"type":30,"value":2357},"When source data changes:",{"type":25,"tag":919,"props":2359,"children":2360},{},[2361,2369],{"type":25,"tag":438,"props":2362,"children":2363},{},[2364],{"type":25,"tag":121,"props":2365,"children":2366},{},[2367],{"type":30,"value":2368},"Right-click the query result table → Refresh",{"type":25,"tag":438,"props":2370,"children":2371},{},[2372,2374],{"type":30,"value":2373},"Or ",{"type":25,"tag":121,"props":2375,"children":2376},{},[2377],{"type":30,"value":2378},"Data → Refresh All",{"type":25,"tag":26,"props":2380,"children":2381},{},[2382,2384,2389],{"type":30,"value":2383},"Power Query re-runs every step in sequence and updates the output table. Set auto-refresh: ",{"type":25,"tag":121,"props":2385,"children":2386},{},[2387],{"type":30,"value":2388},"Data → Queries & Connections → right-click query → Properties → Refresh every N minutes",{"type":30,"value":458},{"type":25,"tag":33,"props":2391,"children":2393},{"id":2392},"practical-use-case-combining-12-monthly-csvs-into-one-report",[2394],{"type":30,"value":2395},"Practical Use Case: Combining 12 Monthly CSVs Into One Report",{"type":25,"tag":434,"props":2397,"children":2398},{},[2399,2408,2413,2424,2436,2448],{"type":25,"tag":438,"props":2400,"children":2401},{},[2402,2407],{"type":25,"tag":121,"props":2403,"children":2404},{},[2405],{"type":30,"value":2406},"Data → Get Data → From File → From Folder",{"type":30,"value":458},{"type":25,"tag":438,"props":2409,"children":2410},{},[2411],{"type":30,"value":2412},"Select the folder containing all 12 CSV files.",{"type":25,"tag":438,"props":2414,"children":2415},{},[2416,2418,2423],{"type":30,"value":2417},"Power Query lists all files. Click ",{"type":25,"tag":121,"props":2419,"children":2420},{},[2421],{"type":30,"value":2422},"Combine → Combine & Transform Data",{"type":30,"value":458},{"type":25,"tag":438,"props":2425,"children":2426},{},[2427,2429,2434],{"type":30,"value":2428},"It automatically stacks all sheets into one table with a ",{"type":25,"tag":121,"props":2430,"children":2431},{},[2432],{"type":30,"value":2433},"Source.Name",{"type":30,"value":2435}," column identifying each file.",{"type":25,"tag":438,"props":2437,"children":2438},{},[2439,2441,2446],{"type":30,"value":2440},"Extract the month from the filename using ",{"type":25,"tag":121,"props":2442,"children":2443},{},[2444],{"type":30,"value":2445},"Add Column → Column from Examples",{"type":30,"value":2447}," — type a sample and Power Query infers the extraction pattern.",{"type":25,"tag":438,"props":2449,"children":2450},{},[2451],{"type":30,"value":2452},"Load to Excel. Next month, drop the new CSV in the folder and hit Refresh.",{"type":25,"tag":26,"props":2454,"children":2455},{},[2456],{"type":30,"value":2457},"This workflow eliminates the need to manually copy-paste monthly data ever again.",{"type":25,"tag":861,"props":2459,"children":2460},{},[2461],{"type":30,"value":865},{"title":8,"searchDepth":80,"depth":80,"links":2463},[2464,2465,2466,2467,2468,2477,2478,2479,2480],{"id":1747,"depth":80,"text":1750},{"id":1818,"depth":80,"text":1821},{"id":1858,"depth":80,"text":1861},{"id":1924,"depth":80,"text":1927},{"id":2020,"depth":80,"text":2023,"children":2469},[2470,2471,2472,2473,2474,2475,2476],{"id":2026,"depth":872,"text":2029},{"id":2045,"depth":872,"text":2048},{"id":2108,"depth":872,"text":2111},{"id":2140,"depth":872,"text":2143},{"id":2189,"depth":872,"text":2192},{"id":2210,"depth":872,"text":2213},{"id":2221,"depth":872,"text":2224},{"id":2264,"depth":80,"text":2267},{"id":2309,"depth":80,"text":2312},{"id":2349,"depth":80,"text":2352},{"id":2392,"depth":80,"text":2395},"content:excel:power-query-basics-guide.md","excel\u002Fpower-query-basics-guide.md","excel\u002Fpower-query-basics-guide",{"_path":2485,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":2486,"description":2487,"category":11,"date":12,"readingTime":2488,"tags":2489,"body":2494,"_type":885,"_id":3184,"_source":887,"_file":3185,"_stem":3186,"_extension":890},"\u002Fexcel\u002Fsumifs-multiple-criteria-guide","SUMIFS with Multiple Criteria: The Complete Practical Guide","Master SUMIFS in Microsoft Excel and Google Sheets. Learn how to sum data using multiple conditions, date ranges, wildcards, and dynamic criteria references with real-world examples.",7,[2490,2491,2492,2493],"SUMIFS","Excel formulas","conditional sum","multiple criteria",{"type":22,"children":2495,"toc":3173},[2496,2521,2527,2541,2585,2612,2618,2648,2666,2680,2685,2691,2704,2718,2739,2745,2750,2764,2784,2792,2806,2827,2833,2838,2863,2868,2882,2887,2901,2907,2919,2933,2938,2944,3055,3061,3085,3099,3112,3126,3132,3145,3150,3164,3169],{"type":25,"tag":26,"props":2497,"children":2498},{},[2499,2504,2506,2512,2514,2519],{"type":25,"tag":50,"props":2500,"children":2502},{"className":2501},[],[2503],{"type":30,"value":2490},{"type":30,"value":2505}," is one of the most practical formulas in any spreadsheet analyst's toolkit. While ",{"type":25,"tag":50,"props":2507,"children":2509},{"className":2508},[],[2510],{"type":30,"value":2511},"SUMIF",{"type":30,"value":2513}," handles a single condition, ",{"type":25,"tag":50,"props":2515,"children":2517},{"className":2516},[],[2518],{"type":30,"value":2490},{"type":30,"value":2520}," lets you define as many criteria as your data requires — and all conditions must be true simultaneously for a row to be included.",{"type":25,"tag":33,"props":2522,"children":2524},{"id":2523},"understanding-the-syntax",[2525],{"type":30,"value":2526},"Understanding the Syntax",{"type":25,"tag":59,"props":2528,"children":2530},{"className":61,"code":2529,"language":6,"meta":8,"style":8},"=SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)\n",[2531],{"type":25,"tag":50,"props":2532,"children":2533},{"__ignoreMap":8},[2534],{"type":25,"tag":68,"props":2535,"children":2536},{"class":70,"line":71},[2537],{"type":25,"tag":68,"props":2538,"children":2539},{},[2540],{"type":30,"value":2529},{"type":25,"tag":919,"props":2542,"children":2543},{},[2544,2554,2564,2580],{"type":25,"tag":438,"props":2545,"children":2546},{},[2547,2552],{"type":25,"tag":121,"props":2548,"children":2549},{},[2550],{"type":30,"value":2551},"sum_range",{"type":30,"value":2553}," — The cells you want to add together.",{"type":25,"tag":438,"props":2555,"children":2556},{},[2557,2562],{"type":25,"tag":121,"props":2558,"children":2559},{},[2560],{"type":30,"value":2561},"criteria_range1",{"type":30,"value":2563}," — The first column to evaluate.",{"type":25,"tag":438,"props":2565,"children":2566},{},[2567,2572,2574,2579],{"type":25,"tag":121,"props":2568,"children":2569},{},[2570],{"type":30,"value":2571},"criteria1",{"type":30,"value":2573}," — The condition that must be matched in ",{"type":25,"tag":50,"props":2575,"children":2577},{"className":2576},[],[2578],{"type":30,"value":2561},{"type":30,"value":458},{"type":25,"tag":438,"props":2581,"children":2582},{},[2583],{"type":30,"value":2584},"Additional pairs can follow with no hard limit.",{"type":25,"tag":1394,"props":2586,"children":2587},{},[2588],{"type":25,"tag":26,"props":2589,"children":2590},{},[2591,2596,2598,2603,2605,2610],{"type":25,"tag":121,"props":2592,"children":2593},{},[2594],{"type":30,"value":2595},"Note:",{"type":30,"value":2597}," All ranges must be the same size as ",{"type":25,"tag":50,"props":2599,"children":2601},{"className":2600},[],[2602],{"type":30,"value":2551},{"type":30,"value":2604},". Mismatched ranges return a ",{"type":25,"tag":50,"props":2606,"children":2608},{"className":2607},[],[2609],{"type":30,"value":1624},{"type":30,"value":2611}," error.",{"type":25,"tag":33,"props":2613,"children":2615},{"id":2614},"example-1-sum-sales-by-region-and-product",[2616],{"type":30,"value":2617},"Example 1: Sum Sales by Region and Product",{"type":25,"tag":26,"props":2619,"children":2620},{},[2621,2623,2627,2629,2633,2635,2640,2642,2646],{"type":30,"value":2622},"Imagine a sales report with columns: ",{"type":25,"tag":121,"props":2624,"children":2625},{},[2626],{"type":30,"value":1196},{"type":30,"value":2628}," (A), ",{"type":25,"tag":121,"props":2630,"children":2631},{},[2632],{"type":30,"value":1179},{"type":30,"value":2634}," (B), ",{"type":25,"tag":121,"props":2636,"children":2637},{},[2638],{"type":30,"value":2639},"Product",{"type":30,"value":2641}," (C), ",{"type":25,"tag":121,"props":2643,"children":2644},{},[2645],{"type":30,"value":1212},{"type":30,"value":2647}," (D).",{"type":25,"tag":26,"props":2649,"children":2650},{},[2651,2653,2658,2660,2665],{"type":30,"value":2652},"To sum all revenue from the ",{"type":25,"tag":121,"props":2654,"children":2655},{},[2656],{"type":30,"value":2657},"North",{"type":30,"value":2659}," region for ",{"type":25,"tag":121,"props":2661,"children":2662},{},[2663],{"type":30,"value":2664},"Widget A",{"type":30,"value":57},{"type":25,"tag":59,"props":2667,"children":2669},{"className":61,"code":2668,"language":6,"meta":8,"style":8},"=SUMIFS(D2:D1000, B2:B1000, \"North\", C2:C1000, \"Widget A\")\n",[2670],{"type":25,"tag":50,"props":2671,"children":2672},{"__ignoreMap":8},[2673],{"type":25,"tag":68,"props":2674,"children":2675},{"class":70,"line":71},[2676],{"type":25,"tag":68,"props":2677,"children":2678},{},[2679],{"type":30,"value":2668},{"type":25,"tag":26,"props":2681,"children":2682},{},[2683],{"type":30,"value":2684},"This returns the total only for rows where both conditions are true.",{"type":25,"tag":33,"props":2686,"children":2688},{"id":2687},"example-2-dynamic-cell-references-instead-of-hardcoded-values",[2689],{"type":30,"value":2690},"Example 2: Dynamic Cell References Instead of Hardcoded Values",{"type":25,"tag":26,"props":2692,"children":2693},{},[2694,2696,2702],{"type":30,"value":2695},"Hardcoding strings like ",{"type":25,"tag":50,"props":2697,"children":2699},{"className":2698},[],[2700],{"type":30,"value":2701},"\"North\"",{"type":30,"value":2703}," into formulas is fragile. Reference a cell instead:",{"type":25,"tag":59,"props":2705,"children":2707},{"className":61,"code":2706,"language":6,"meta":8,"style":8},"=SUMIFS(D2:D1000, B2:B1000, G2, C2:C1000, H2)\n",[2708],{"type":25,"tag":50,"props":2709,"children":2710},{"__ignoreMap":8},[2711],{"type":25,"tag":68,"props":2712,"children":2713},{"class":70,"line":71},[2714],{"type":25,"tag":68,"props":2715,"children":2716},{},[2717],{"type":30,"value":2706},{"type":25,"tag":26,"props":2719,"children":2720},{},[2721,2723,2729,2731,2737],{"type":30,"value":2722},"Now changing ",{"type":25,"tag":50,"props":2724,"children":2726},{"className":2725},[],[2727],{"type":30,"value":2728},"G2",{"type":30,"value":2730}," or ",{"type":25,"tag":50,"props":2732,"children":2734},{"className":2733},[],[2735],{"type":30,"value":2736},"H2",{"type":30,"value":2738}," automatically updates the formula result. This pattern is essential for dashboard-style reporting where users change filter values.",{"type":25,"tag":33,"props":2740,"children":2742},{"id":2741},"example-3-date-range-criteria",[2743],{"type":30,"value":2744},"Example 3: Date Range Criteria",{"type":25,"tag":26,"props":2746,"children":2747},{},[2748],{"type":30,"value":2749},"SUMIFS handles date-based conditions by comparing the date serial number. Use comparison operators wrapped in quotes:",{"type":25,"tag":59,"props":2751,"children":2753},{"className":61,"code":2752,"language":6,"meta":8,"style":8},"=SUMIFS(D2:D1000, A2:A1000, \">=\"&DATE(2024,1,1), A2:A1000, \"\u003C=\"&DATE(2024,3,31))\n",[2754],{"type":25,"tag":50,"props":2755,"children":2756},{"__ignoreMap":8},[2757],{"type":25,"tag":68,"props":2758,"children":2759},{"class":70,"line":71},[2760],{"type":25,"tag":68,"props":2761,"children":2762},{},[2763],{"type":30,"value":2752},{"type":25,"tag":26,"props":2765,"children":2766},{},[2767,2769,2775,2777,2783],{"type":30,"value":2768},"This sums revenue for Q1 2024. The ",{"type":25,"tag":50,"props":2770,"children":2772},{"className":2771},[],[2773],{"type":30,"value":2774},"&",{"type":30,"value":2776}," operator joins the comparison string with the date value returned by ",{"type":25,"tag":50,"props":2778,"children":2780},{"className":2779},[],[2781],{"type":30,"value":2782},"DATE()",{"type":30,"value":458},{"type":25,"tag":26,"props":2785,"children":2786},{},[2787],{"type":25,"tag":121,"props":2788,"children":2789},{},[2790],{"type":30,"value":2791},"Using cell references for dates:",{"type":25,"tag":59,"props":2793,"children":2795},{"className":61,"code":2794,"language":6,"meta":8,"style":8},"=SUMIFS(D2:D1000, A2:A1000, \">=\"&J2, A2:A1000, \"\u003C=\"&K2)\n",[2796],{"type":25,"tag":50,"props":2797,"children":2798},{"__ignoreMap":8},[2799],{"type":25,"tag":68,"props":2800,"children":2801},{"class":70,"line":71},[2802],{"type":25,"tag":68,"props":2803,"children":2804},{},[2805],{"type":30,"value":2794},{"type":25,"tag":26,"props":2807,"children":2808},{},[2809,2811,2817,2819,2825],{"type":30,"value":2810},"Where ",{"type":25,"tag":50,"props":2812,"children":2814},{"className":2813},[],[2815],{"type":30,"value":2816},"J2",{"type":30,"value":2818}," contains the start date and ",{"type":25,"tag":50,"props":2820,"children":2822},{"className":2821},[],[2823],{"type":30,"value":2824},"K2",{"type":30,"value":2826}," the end date.",{"type":25,"tag":33,"props":2828,"children":2830},{"id":2829},"example-4-wildcard-matching",[2831],{"type":30,"value":2832},"Example 4: Wildcard Matching",{"type":25,"tag":26,"props":2834,"children":2835},{},[2836],{"type":30,"value":2837},"SUMIFS supports two wildcards:",{"type":25,"tag":919,"props":2839,"children":2840},{},[2841,2852],{"type":25,"tag":438,"props":2842,"children":2843},{},[2844,2850],{"type":25,"tag":50,"props":2845,"children":2847},{"className":2846},[],[2848],{"type":30,"value":2849},"*",{"type":30,"value":2851}," — Matches any sequence of characters",{"type":25,"tag":438,"props":2853,"children":2854},{},[2855,2861],{"type":25,"tag":50,"props":2856,"children":2858},{"className":2857},[],[2859],{"type":30,"value":2860},"?",{"type":30,"value":2862}," — Matches exactly one character",{"type":25,"tag":26,"props":2864,"children":2865},{},[2866],{"type":30,"value":2867},"Sum all revenue for products starting with \"Widget\":",{"type":25,"tag":59,"props":2869,"children":2871},{"className":61,"code":2870,"language":6,"meta":8,"style":8},"=SUMIFS(D2:D1000, C2:C1000, \"Widget*\")\n",[2872],{"type":25,"tag":50,"props":2873,"children":2874},{"__ignoreMap":8},[2875],{"type":25,"tag":68,"props":2876,"children":2877},{"class":70,"line":71},[2878],{"type":25,"tag":68,"props":2879,"children":2880},{},[2881],{"type":30,"value":2870},{"type":25,"tag":26,"props":2883,"children":2884},{},[2885],{"type":30,"value":2886},"Sum products with exactly five-character names:",{"type":25,"tag":59,"props":2888,"children":2890},{"className":61,"code":2889,"language":6,"meta":8,"style":8},"=SUMIFS(D2:D1000, C2:C1000, \"?????\")\n",[2891],{"type":25,"tag":50,"props":2892,"children":2893},{"__ignoreMap":8},[2894],{"type":25,"tag":68,"props":2895,"children":2896},{"class":70,"line":71},[2897],{"type":25,"tag":68,"props":2898,"children":2899},{},[2900],{"type":30,"value":2889},{"type":25,"tag":33,"props":2902,"children":2904},{"id":2903},"example-5-not-equal-criteria",[2905],{"type":30,"value":2906},"Example 5: NOT Equal Criteria",{"type":25,"tag":26,"props":2908,"children":2909},{},[2910,2912,2918],{"type":30,"value":2911},"Exclude a specific category using ",{"type":25,"tag":50,"props":2913,"children":2915},{"className":2914},[],[2916],{"type":30,"value":2917},"\u003C>",{"type":30,"value":57},{"type":25,"tag":59,"props":2920,"children":2922},{"className":61,"code":2921,"language":6,"meta":8,"style":8},"=SUMIFS(D2:D1000, B2:B1000, \"\u003C>South\")\n",[2923],{"type":25,"tag":50,"props":2924,"children":2925},{"__ignoreMap":8},[2926],{"type":25,"tag":68,"props":2927,"children":2928},{"class":70,"line":71},[2929],{"type":25,"tag":68,"props":2930,"children":2931},{},[2932],{"type":30,"value":2921},{"type":25,"tag":26,"props":2934,"children":2935},{},[2936],{"type":30,"value":2937},"This sums revenue from every region except \"South\".",{"type":25,"tag":33,"props":2939,"children":2941},{"id":2940},"common-errors-and-fixes",[2942],{"type":30,"value":2943},"Common Errors and Fixes",{"type":25,"tag":646,"props":2945,"children":2946},{},[2947,2968],{"type":25,"tag":650,"props":2948,"children":2949},{},[2950],{"type":25,"tag":654,"props":2951,"children":2952},{},[2953,2958,2963],{"type":25,"tag":658,"props":2954,"children":2955},{},[2956],{"type":30,"value":2957},"Error",{"type":25,"tag":658,"props":2959,"children":2960},{},[2961],{"type":30,"value":2962},"Cause",{"type":25,"tag":658,"props":2964,"children":2965},{},[2966],{"type":30,"value":2967},"Fix",{"type":25,"tag":684,"props":2969,"children":2970},{},[2971,2992,3024],{"type":25,"tag":654,"props":2972,"children":2973},{},[2974,2982,2987],{"type":25,"tag":691,"props":2975,"children":2976},{},[2977],{"type":25,"tag":50,"props":2978,"children":2980},{"className":2979},[],[2981],{"type":30,"value":1624},{"type":25,"tag":691,"props":2983,"children":2984},{},[2985],{"type":30,"value":2986},"Range sizes do not match",{"type":25,"tag":691,"props":2988,"children":2989},{},[2990],{"type":30,"value":2991},"Ensure all ranges span the same number of rows",{"type":25,"tag":654,"props":2993,"children":2994},{},[2995,3006,3011],{"type":25,"tag":691,"props":2996,"children":2997},{},[2998,3004],{"type":25,"tag":50,"props":2999,"children":3001},{"className":3000},[],[3002],{"type":30,"value":3003},"0",{"type":30,"value":3005}," returned unexpectedly",{"type":25,"tag":691,"props":3007,"children":3008},{},[3009],{"type":30,"value":3010},"Text stored as numbers or leading spaces",{"type":25,"tag":691,"props":3012,"children":3013},{},[3014,3016,3022],{"type":30,"value":3015},"Use ",{"type":25,"tag":50,"props":3017,"children":3019},{"className":3018},[],[3020],{"type":30,"value":3021},"TRIM()",{"type":30,"value":3023}," on data or check cell format",{"type":25,"tag":654,"props":3025,"children":3026},{},[3027,3032,3037],{"type":25,"tag":691,"props":3028,"children":3029},{},[3030],{"type":30,"value":3031},"Wrong result with dates",{"type":25,"tag":691,"props":3033,"children":3034},{},[3035],{"type":30,"value":3036},"Date comparison using text",{"type":25,"tag":691,"props":3038,"children":3039},{},[3040,3041,3046,3047,3053],{"type":30,"value":3015},{"type":25,"tag":50,"props":3042,"children":3044},{"className":3043},[],[3045],{"type":30,"value":2782},{"type":30,"value":2730},{"type":25,"tag":50,"props":3048,"children":3050},{"className":3049},[],[3051],{"type":30,"value":3052},"DATEVALUE()",{"type":30,"value":3054}," to convert",{"type":25,"tag":33,"props":3056,"children":3058},{"id":3057},"sumifs-vs-sumproduct-for-or-logic",[3059],{"type":30,"value":3060},"SUMIFS vs SUMPRODUCT for OR Logic",{"type":25,"tag":26,"props":3062,"children":3063},{},[3064,3069,3071,3076,3078,3084],{"type":25,"tag":50,"props":3065,"children":3067},{"className":3066},[],[3068],{"type":30,"value":2490},{"type":30,"value":3070}," uses AND logic only. To sum where ",{"type":25,"tag":121,"props":3072,"children":3073},{},[3074],{"type":30,"value":3075},"either",{"type":30,"value":3077}," of two criteria is true, use ",{"type":25,"tag":50,"props":3079,"children":3081},{"className":3080},[],[3082],{"type":30,"value":3083},"SUMPRODUCT",{"type":30,"value":57},{"type":25,"tag":59,"props":3086,"children":3088},{"className":61,"code":3087,"language":6,"meta":8,"style":8},"=SUMPRODUCT((B2:B1000=\"North\")+(B2:B1000=\"South\"), D2:D1000)\n",[3089],{"type":25,"tag":50,"props":3090,"children":3091},{"__ignoreMap":8},[3092],{"type":25,"tag":68,"props":3093,"children":3094},{"class":70,"line":71},[3095],{"type":25,"tag":68,"props":3096,"children":3097},{},[3098],{"type":30,"value":3087},{"type":25,"tag":26,"props":3100,"children":3101},{},[3102,3104,3110],{"type":30,"value":3103},"Note that rows matching both conditions are counted twice with ",{"type":25,"tag":50,"props":3105,"children":3107},{"className":3106},[],[3108],{"type":30,"value":3109},"+",{"type":30,"value":3111},". For true OR without double-counting:",{"type":25,"tag":59,"props":3113,"children":3115},{"className":61,"code":3114,"language":6,"meta":8,"style":8},"=SUMPRODUCT(((B2:B1000=\"North\")+(B2:B1000=\"South\")>0)*D2:D1000)\n",[3116],{"type":25,"tag":50,"props":3117,"children":3118},{"__ignoreMap":8},[3119],{"type":25,"tag":68,"props":3120,"children":3121},{"class":70,"line":71},[3122],{"type":25,"tag":68,"props":3123,"children":3124},{},[3125],{"type":30,"value":3114},{"type":25,"tag":33,"props":3127,"children":3129},{"id":3128},"performance-tip-for-large-datasets",[3130],{"type":30,"value":3131},"Performance Tip for Large Datasets",{"type":25,"tag":26,"props":3133,"children":3134},{},[3135,3137,3143],{"type":30,"value":3136},"When working with tables containing tens of thousands of rows, limit your ranges to the actual data rows rather than full column references (",{"type":25,"tag":50,"props":3138,"children":3140},{"className":3139},[],[3141],{"type":30,"value":3142},"D:D",{"type":30,"value":3144},"). Full column references force Excel to evaluate over a million cells even when most are empty, slowing recalculation noticeably.",{"type":25,"tag":26,"props":3146,"children":3147},{},[3148],{"type":30,"value":3149},"Use structured table references instead:",{"type":25,"tag":59,"props":3151,"children":3153},{"className":61,"code":3152,"language":6,"meta":8,"style":8},"=SUMIFS(SalesTable[Revenue], SalesTable[Region], \"North\", SalesTable[Product], \"Widget A\")\n",[3154],{"type":25,"tag":50,"props":3155,"children":3156},{"__ignoreMap":8},[3157],{"type":25,"tag":68,"props":3158,"children":3159},{"class":70,"line":71},[3160],{"type":25,"tag":68,"props":3161,"children":3162},{},[3163],{"type":30,"value":3152},{"type":25,"tag":26,"props":3165,"children":3166},{},[3167],{"type":30,"value":3168},"Structured references auto-expand when new rows are added to the table, eliminating the need for oversized ranges.",{"type":25,"tag":861,"props":3170,"children":3171},{},[3172],{"type":30,"value":865},{"title":8,"searchDepth":80,"depth":80,"links":3174},[3175,3176,3177,3178,3179,3180,3181,3182,3183],{"id":2523,"depth":80,"text":2526},{"id":2614,"depth":80,"text":2617},{"id":2687,"depth":80,"text":2690},{"id":2741,"depth":80,"text":2744},{"id":2829,"depth":80,"text":2832},{"id":2903,"depth":80,"text":2906},{"id":2940,"depth":80,"text":2943},{"id":3057,"depth":80,"text":3060},{"id":3128,"depth":80,"text":3131},"content:excel:sumifs-multiple-criteria-guide.md","excel\u002Fsumifs-multiple-criteria-guide.md","excel\u002Fsumifs-multiple-criteria-guide",{"_path":3188,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":3189,"description":3190,"category":11,"date":12,"readingTime":3191,"tags":3192,"body":3196,"_type":885,"_id":3727,"_source":887,"_file":3728,"_stem":3729,"_extension":890},"\u002Fexcel\u002Fxlookup-migration-guide","XLOOKUP vs VLOOKUP: The Modern Migration Guide","Why XLOOKUP replaces VLOOKUP and HLOOKUP in Excel, with practical syntax comparisons, left-lookup demonstrations, and default exact match handling.",5,[3193,3194,2491,3195],"XLOOKUP","VLOOKUP","lookup functions",{"type":22,"children":3197,"toc":3717},[3198,3231,3243,3249,3428,3434,3440,3454,3487,3493,3507,3538,3544,3563,3577,3582,3629,3635,3655,3669,3688,3694,3713],{"type":25,"tag":26,"props":3199,"children":3200},{},[3201,3203,3208,3210,3215,3217,3223,3224,3229],{"type":30,"value":3202},"For decades, ",{"type":25,"tag":50,"props":3204,"children":3206},{"className":3205},[],[3207],{"type":30,"value":3194},{"type":30,"value":3209}," was the first advanced function spreadsheet users learned. However, ",{"type":25,"tag":50,"props":3211,"children":3213},{"className":3212},[],[3214],{"type":30,"value":3194},{"type":30,"value":3216}," carries well-known limitations: it cannot natively look to the left, defaults dangerously to approximate matching unless ",{"type":25,"tag":50,"props":3218,"children":3220},{"className":3219},[],[3221],{"type":30,"value":3222},"FALSE",{"type":30,"value":2730},{"type":25,"tag":50,"props":3225,"children":3227},{"className":3226},[],[3228],{"type":30,"value":3003},{"type":30,"value":3230}," is specified, and breaks whenever columns are inserted into the source range.",{"type":25,"tag":26,"props":3232,"children":3233},{},[3234,3236,3241],{"type":30,"value":3235},"In modern versions of Microsoft Excel (Microsoft 365 and Excel 2021+) as well as Google Sheets, ",{"type":25,"tag":50,"props":3237,"children":3239},{"className":3238},[],[3240],{"type":30,"value":3193},{"type":30,"value":3242}," fixes every single one of these flaws.",{"type":25,"tag":33,"props":3244,"children":3246},{"id":3245},"feature-comparison-xlookup-vs-vlookup",[3247],{"type":30,"value":3248},"Feature Comparison: XLOOKUP vs VLOOKUP",{"type":25,"tag":646,"props":3250,"children":3251},{},[3252,3273],{"type":25,"tag":650,"props":3253,"children":3254},{},[3255],{"type":25,"tag":654,"props":3256,"children":3257},{},[3258,3263,3268],{"type":25,"tag":658,"props":3259,"children":3260},{"align":660},[3261],{"type":30,"value":3262},"Feature",{"type":25,"tag":658,"props":3264,"children":3265},{"align":660},[3266],{"type":30,"value":3267},"Traditional VLOOKUP",{"type":25,"tag":658,"props":3269,"children":3270},{"align":660},[3271],{"type":30,"value":3272},"Modern XLOOKUP",{"type":25,"tag":684,"props":3274,"children":3275},{},[3276,3297,3318,3339,3374,3395],{"type":25,"tag":654,"props":3277,"children":3278},{},[3279,3287,3292],{"type":25,"tag":691,"props":3280,"children":3281},{"align":660},[3282],{"type":25,"tag":121,"props":3283,"children":3284},{},[3285],{"type":30,"value":3286},"Default Match Mode",{"type":25,"tag":691,"props":3288,"children":3289},{"align":660},[3290],{"type":30,"value":3291},"Approximate match (risks silent errors)",{"type":25,"tag":691,"props":3293,"children":3294},{"align":660},[3295],{"type":30,"value":3296},"Exact match by default (safe)",{"type":25,"tag":654,"props":3298,"children":3299},{},[3300,3308,3313],{"type":25,"tag":691,"props":3301,"children":3302},{"align":660},[3303],{"type":25,"tag":121,"props":3304,"children":3305},{},[3306],{"type":30,"value":3307},"Lookup Direction",{"type":25,"tag":691,"props":3309,"children":3310},{"align":660},[3311],{"type":30,"value":3312},"Left-to-right only",{"type":25,"tag":691,"props":3314,"children":3315},{"align":660},[3316],{"type":30,"value":3317},"Any direction (left, right, up, down)",{"type":25,"tag":654,"props":3319,"children":3320},{},[3321,3329,3334],{"type":25,"tag":691,"props":3322,"children":3323},{"align":660},[3324],{"type":25,"tag":121,"props":3325,"children":3326},{},[3327],{"type":30,"value":3328},"Column Inserts",{"type":25,"tag":691,"props":3330,"children":3331},{"align":660},[3332],{"type":30,"value":3333},"Breaks hardcoded column index numbers",{"type":25,"tag":691,"props":3335,"children":3336},{"align":660},[3337],{"type":30,"value":3338},"Fully resilient to column insertions",{"type":25,"tag":654,"props":3340,"children":3341},{},[3342,3350,3361],{"type":25,"tag":691,"props":3343,"children":3344},{"align":660},[3345],{"type":25,"tag":121,"props":3346,"children":3347},{},[3348],{"type":30,"value":3349},"Error Handling",{"type":25,"tag":691,"props":3351,"children":3352},{"align":660},[3353,3355],{"type":30,"value":3354},"Requires wrapping with ",{"type":25,"tag":50,"props":3356,"children":3358},{"className":3357},[],[3359],{"type":30,"value":3360},"=IFERROR()",{"type":25,"tag":691,"props":3362,"children":3363},{"align":660},[3364,3366,3372],{"type":30,"value":3365},"Built-in ",{"type":25,"tag":50,"props":3367,"children":3369},{"className":3368},[],[3370],{"type":30,"value":3371},"[if_not_found]",{"type":30,"value":3373}," parameter",{"type":25,"tag":654,"props":3375,"children":3376},{},[3377,3385,3390],{"type":25,"tag":691,"props":3378,"children":3379},{"align":660},[3380],{"type":25,"tag":121,"props":3381,"children":3382},{},[3383],{"type":30,"value":3384},"Search Order",{"type":25,"tag":691,"props":3386,"children":3387},{"align":660},[3388],{"type":30,"value":3389},"Top-to-bottom only",{"type":25,"tag":691,"props":3391,"children":3392},{"align":660},[3393],{"type":30,"value":3394},"Top-to-bottom or bottom-to-top",{"type":25,"tag":654,"props":3396,"children":3397},{},[3398,3406,3417],{"type":25,"tag":691,"props":3399,"children":3400},{"align":660},[3401],{"type":25,"tag":121,"props":3402,"children":3403},{},[3404],{"type":30,"value":3405},"Two-Way Lookups",{"type":25,"tag":691,"props":3407,"children":3408},{"align":660},[3409,3411],{"type":30,"value":3410},"Requires nesting with ",{"type":25,"tag":50,"props":3412,"children":3414},{"className":3413},[],[3415],{"type":30,"value":3416},"MATCH()",{"type":25,"tag":691,"props":3418,"children":3419},{"align":660},[3420,3422],{"type":30,"value":3421},"Natively nests with a second ",{"type":25,"tag":50,"props":3423,"children":3425},{"className":3424},[],[3426],{"type":30,"value":3427},"XLOOKUP()",{"type":25,"tag":33,"props":3429,"children":3431},{"id":3430},"syntax-comparison",[3432],{"type":30,"value":3433},"Syntax Comparison",{"type":25,"tag":164,"props":3435,"children":3437},{"id":3436},"the-traditional-vlookup-formula",[3438],{"type":30,"value":3439},"The Traditional VLOOKUP Formula",{"type":25,"tag":59,"props":3441,"children":3443},{"className":61,"code":3442,"language":6,"meta":8,"style":8},"=VLOOKUP(D2, A2:C100, 3, FALSE)\n",[3444],{"type":25,"tag":50,"props":3445,"children":3446},{"__ignoreMap":8},[3447],{"type":25,"tag":68,"props":3448,"children":3449},{"class":70,"line":71},[3450],{"type":25,"tag":68,"props":3451,"children":3452},{},[3453],{"type":30,"value":3442},{"type":25,"tag":919,"props":3455,"children":3456},{},[3457,3470,3475],{"type":25,"tag":438,"props":3458,"children":3459},{},[3460,3462,3468],{"type":30,"value":3461},"Requires counting columns manually (e.g., column ",{"type":25,"tag":50,"props":3463,"children":3465},{"className":3464},[],[3466],{"type":30,"value":3467},"3",{"type":30,"value":3469},").",{"type":25,"tag":438,"props":3471,"children":3472},{},[3473],{"type":30,"value":3474},"Breaks if a new column is inserted between columns A and C.",{"type":25,"tag":438,"props":3476,"children":3477},{},[3478,3480,3485],{"type":30,"value":3479},"Requires ",{"type":25,"tag":50,"props":3481,"children":3483},{"className":3482},[],[3484],{"type":30,"value":3222},{"type":30,"value":3486}," at the end to prevent dangerous nearest-match lookups.",{"type":25,"tag":164,"props":3488,"children":3490},{"id":3489},"the-modern-xlookup-replacement",[3491],{"type":30,"value":3492},"The Modern XLOOKUP Replacement",{"type":25,"tag":59,"props":3494,"children":3496},{"className":61,"code":3495,"language":6,"meta":8,"style":8},"=XLOOKUP(D2, A2:A100, C2:C100, \"Not Found\")\n",[3497],{"type":25,"tag":50,"props":3498,"children":3499},{"__ignoreMap":8},[3500],{"type":25,"tag":68,"props":3501,"children":3502},{"class":70,"line":71},[3503],{"type":25,"tag":68,"props":3504,"children":3505},{},[3506],{"type":30,"value":3495},{"type":25,"tag":919,"props":3508,"children":3509},{},[3510,3515,3520,3525],{"type":25,"tag":438,"props":3511,"children":3512},{},[3513],{"type":30,"value":3514},"Decouples the lookup array from the return array.",{"type":25,"tag":438,"props":3516,"children":3517},{},[3518],{"type":30,"value":3519},"Defaults to exact match automatically.",{"type":25,"tag":438,"props":3521,"children":3522},{},[3523],{"type":30,"value":3524},"Easily looks to the left (e.g., looking up in column C and returning from column A).",{"type":25,"tag":438,"props":3526,"children":3527},{},[3528,3530,3536],{"type":30,"value":3529},"Includes built-in ",{"type":25,"tag":50,"props":3531,"children":3533},{"className":3532},[],[3534],{"type":30,"value":3535},"#N\u002FA",{"type":30,"value":3537}," error handling via the fourth parameter.",{"type":25,"tag":33,"props":3539,"children":3541},{"id":3540},"practical-example-looking-up-data-to-the-left",[3542],{"type":30,"value":3543},"Practical Example: Looking Up Data to the Left",{"type":25,"tag":26,"props":3545,"children":3546},{},[3547,3549,3554,3556,3561],{"type":30,"value":3548},"Suppose your data table has Employee ID in Column B and Employee Name in Column A. ",{"type":25,"tag":50,"props":3550,"children":3552},{"className":3551},[],[3553],{"type":30,"value":3194},{"type":30,"value":3555}," cannot look backwards without complex restructuring. With ",{"type":25,"tag":50,"props":3557,"children":3559},{"className":3558},[],[3560],{"type":30,"value":3193},{"type":30,"value":3562},", the order of columns does not matter:",{"type":25,"tag":59,"props":3564,"children":3566},{"className":61,"code":3565,"language":6,"meta":8,"style":8},"=XLOOKUP(E2, B2:B100, A2:A100, \"Employee Not Found\")\n",[3567],{"type":25,"tag":50,"props":3568,"children":3569},{"__ignoreMap":8},[3570],{"type":25,"tag":68,"props":3571,"children":3572},{"class":70,"line":71},[3573],{"type":25,"tag":68,"props":3574,"children":3575},{},[3576],{"type":30,"value":3565},{"type":25,"tag":26,"props":3578,"children":3579},{},[3580],{"type":30,"value":3581},"Here:",{"type":25,"tag":919,"props":3583,"children":3584},{},[3585,3596,3607,3618],{"type":25,"tag":438,"props":3586,"children":3587},{},[3588,3594],{"type":25,"tag":50,"props":3589,"children":3591},{"className":3590},[],[3592],{"type":30,"value":3593},"E2",{"type":30,"value":3595}," is the Employee ID to find.",{"type":25,"tag":438,"props":3597,"children":3598},{},[3599,3605],{"type":25,"tag":50,"props":3600,"children":3602},{"className":3601},[],[3603],{"type":30,"value":3604},"B2:B100",{"type":30,"value":3606}," is the column searched for that ID.",{"type":25,"tag":438,"props":3608,"children":3609},{},[3610,3616],{"type":25,"tag":50,"props":3611,"children":3613},{"className":3612},[],[3614],{"type":30,"value":3615},"A2:A100",{"type":30,"value":3617}," is the column containing the name to return.",{"type":25,"tag":438,"props":3619,"children":3620},{},[3621,3627],{"type":25,"tag":50,"props":3622,"children":3624},{"className":3623},[],[3625],{"type":30,"value":3626},"\"Employee Not Found\"",{"type":30,"value":3628}," appears cleanly if no matching record exists.",{"type":25,"tag":33,"props":3630,"children":3632},{"id":3631},"two-way-matrix-lookup-with-nested-xlookup",[3633],{"type":30,"value":3634},"Two-Way Matrix Lookup with Nested XLOOKUP",{"type":25,"tag":26,"props":3636,"children":3637},{},[3638,3640,3646,3648,3653],{"type":30,"value":3639},"To look up a value at the intersection of a specific row and column (replacing ",{"type":25,"tag":50,"props":3641,"children":3643},{"className":3642},[],[3644],{"type":30,"value":3645},"INDEX\u002FMATCH\u002FMATCH",{"type":30,"value":3647},"), nest two ",{"type":25,"tag":50,"props":3649,"children":3651},{"className":3650},[],[3652],{"type":30,"value":3193},{"type":30,"value":3654}," formulas:",{"type":25,"tag":59,"props":3656,"children":3658},{"className":61,"code":3657,"language":6,"meta":8,"style":8},"=XLOOKUP(H2, A2:A10, XLOOKUP(H3, B1:F1, B2:F10))\n",[3659],{"type":25,"tag":50,"props":3660,"children":3661},{"__ignoreMap":8},[3662],{"type":25,"tag":68,"props":3663,"children":3664},{"class":70,"line":71},[3665],{"type":25,"tag":68,"props":3666,"children":3667},{},[3668],{"type":30,"value":3657},{"type":25,"tag":26,"props":3670,"children":3671},{},[3672,3674,3679,3681,3686],{"type":30,"value":3673},"The inner ",{"type":25,"tag":50,"props":3675,"children":3677},{"className":3676},[],[3678],{"type":30,"value":3193},{"type":30,"value":3680}," identifies the correct column range, and the outer ",{"type":25,"tag":50,"props":3682,"children":3684},{"className":3683},[],[3685],{"type":30,"value":3193},{"type":30,"value":3687}," extracts the value for the matching row.",{"type":25,"tag":33,"props":3689,"children":3691},{"id":3690},"when-to-still-use-index-match",[3692],{"type":30,"value":3693},"When to Still Use INDEX \u002F MATCH",{"type":25,"tag":26,"props":3695,"children":3696},{},[3697,3699,3704,3706,3711],{"type":30,"value":3698},"If your organization must maintain backward compatibility with legacy workbooks running on Excel 2016 or earlier, ",{"type":25,"tag":50,"props":3700,"children":3702},{"className":3701},[],[3703],{"type":30,"value":857},{"type":30,"value":3705}," remains the universal standard for flexible two-way lookups. For all modern environments, ",{"type":25,"tag":50,"props":3707,"children":3709},{"className":3708},[],[3710],{"type":30,"value":3193},{"type":30,"value":3712}," is faster to write, easier to audit, and far less error-prone.",{"type":25,"tag":861,"props":3714,"children":3715},{},[3716],{"type":30,"value":865},{"title":8,"searchDepth":80,"depth":80,"links":3718},[3719,3720,3724,3725,3726],{"id":3245,"depth":80,"text":3248},{"id":3430,"depth":80,"text":3433,"children":3721},[3722,3723],{"id":3436,"depth":872,"text":3439},{"id":3489,"depth":872,"text":3492},{"id":3540,"depth":80,"text":3543},{"id":3631,"depth":80,"text":3634},{"id":3690,"depth":80,"text":3693},"content:excel:xlookup-migration-guide.md","excel\u002Fxlookup-migration-guide.md","excel\u002Fxlookup-migration-guide",1792854428816]