Excel SORTBY function - custom sort with formula
Mastering Excel's Dynamic Array SORTBY Function: A Comprehensive Guide
Excel offers various methods for arranging data, but the new dynamic array SORTBY
function provides a powerful and streamlined approach to custom sorting using formulas. This guide explores its syntax, typical uses, and troubleshooting tips.
Understanding the SORTBY
Function
SORTBY
sorts one array based on the values in another. It supports single or multiple column sorting and is part of Excel 365 and Excel 2021's dynamic array functionality. Results spill into neighboring cells and update automatically with data changes.
Syntax:
SORTBY(array, by_array1, [sort_order1], [by_array2, sort_order2], ...)
-
array
(required): The range or array to be sorted. -
by_array1
(required): The range or array to sort by. -
sort_order1
(optional): 1 (ascending, default) or -1 (descending). -
by_array2
,sort_order2
, etc. (optional): Additional sorting criteria.
Key Considerations:
-
by_array
arguments must be single-row or single-column ranges. -
array
and allby_array
arguments must have compatible dimensions (same number of rows/columns). Mismatched dimensions result in a#VALUE!
error. - Ensure sufficient empty cells for spill range to avoid
#SPILL!
errors. Using Excel Tables or dynamic named ranges helps manage this automatically. - Results update automatically, but added data outside the initial
array
reference requires updating the formula or using a dynamic range.
Basic SORTBY
Example:
Let's say you have project names (Column A) and their values (Column B). To sort projects by value (descending) without showing the values in the result:
=SORTBY(A2:A10, B2:B10, -1)
This formula, entered in a cell, will spill the sorted project names into the cells below.
Advanced SORTBY
Applications:
-
Multi-Column Sorting: Sort by "Status" (Column B) alphabetically, then by "Value" (Column C) descending:
=SORTBY(A2:C10, B2:B10, 1, C2:C10, -1)
-
Custom Sorting: Sort by a custom order of statuses (e.g., "In Progress", "Completed", "On Hold") defined in cells E2:E4:
=SORTBY(A2:C10, MATCH(B2:B10, E2:E4, 0))
This uses
MATCH
to assign a numerical rank based on the custom list. Adding a, -1
after theMATCH
function reverses the custom sort order. -
Random Sorting: Use
RANDARRAY
to randomly shuffle data:=SORTBY(A2:C10, RANDARRAY(ROWS(A2:C10)))
Note:
RANDARRAY
is volatile; recalculating the sheet reshuffles the data. Use "Paste Special" > "Values" to fix the results. -
Sorting by String Length: Sort cells by text length (ascending):
=SORTBY(A2:A7, LEN(A2:A7), 1)
SORTBY
vs. SORT
:
While both sort data, SORTBY
offers flexibility by allowing sorting based on independent arrays or custom lists, unlike SORT
. Both support multi-level sorting and work with other functions.
Troubleshooting:
-
#VALUE!
error: Checkby_array
dimensions and data types. -
#SPILL!
error: Clear space for the spill range. -
#REF!
error: Ensure referenced workbooks are open. -
#NAME?
error: Ensure you're using Excel 365 or Excel 2021.
This comprehensive guide empowers you to leverage the SORTBY
function for efficient and flexible data manipulation in Excel. Download the practice workbook for hands-on experience.
The above is the detailed content of Excel SORTBY function - custom sort with formula. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



This article will guide you through the process of creating a timeline for Excel pivot tables and charts and demonstrate how you can use it to interact with your data in a dynamic and engaging way. You've got your data organized in a pivo

This tutorial demonstrates how to efficiently locate the top N values within a dataset and retrieve associated data using Excel formulas. Whether you need the highest, lowest, or those meeting specific criteria, this guide provides solutions. Findi

Mastering Google Sheets Sorting: A Comprehensive Guide Sorting data in Google Sheets needn't be complex. This guide covers various techniques, from sorting entire sheets to specific ranges, by color, date, and multiple columns. Whether you're a novi

In this tutorial, you'll learn how to use regular expressions in Excel to find and extract substrings matching a given pattern. Microsoft Excel provides a number of functions to extract text from cells. Those functions can cope with most

This tutorial shows you how to add dropdown lists to your Outlook email templates, including multiple selections and database population. While Outlook doesn't directly support dropdowns, this guide provides creative workarounds. Email templates sav

Wouldn't it be convenient if you could compose an email now and have it sent at a later, more opportune time? With Outlook's scheduling feature, you can do just that! Imagine that you are working late at night, inspired by a brilliant ide

This guide shows you two easy ways to enable email templates in Gmail: using Gmail's built-in settings or installing the Shared Email Templates for Gmail Chrome extension. Gmail templates are a huge time-saver for frequently sent emails, eliminating

This tutorial demonstrates several methods for separating text and numbers within Excel cells, utilizing both built-in functions and custom VBA functions. You'll learn how to extract numbers while removing text, isolate text while discarding numbers
