今天跟大家分享下我們如何使用函數,來進行自定義排序,這樣也是一個粉絲提問的問題,操作也是比較簡單的,我們需要使用SORTBY與MATCH來嵌套使用
一、函數了解
這2個函數我之前都是講過的,我們再來簡單地說一下就不再贅述了
1. SORTBY
它是一個多條件排序函數,可以用于多條件排序語法如下,我們可以設置多組排序的條件與規則
= SORTBY(排序區域,第1個排序的條件,排序規則,第2個排序的條件,排序規則)
2. MATCH
它的作用是查找所在的位置,也是一個比較古老的函數了,語法如下
=MATCH(查找值,查找區域,0)
![]()
二、案例拆解
如下圖我們想根據班級讓下面的表格按照【1班、3班、2班】這個順序來排序,首先我們需要使用MTACH來查找,公式如下
公式:=MATCH(B2:B9,F2:F4,0)
這個公式的作用是查找班級在【1班、3班、2班】這個序列中的位置,1班在第一個位置結果為1,3班在第二個位置結果為2,以此類推2班的結果就是3。我們需要將這一列數據代入到SORTBY來做排序
![]()
三、排序
公式:=SORTBY(A2:C9,MATCH(B2:B9,E2:E4,0),1)
第一參數:A2:C9我們需要的排序區域
第二參數:MATCH(B2:B9,E2:E4,0),我們使用公式得到的1-3的數字
第三參數:1表示升序排序
函數會根據第二參數中的數字來進行升序排序,結果也正好是我們需要的排序規則,這個就是函數的作用。
![]()
最后我們還可以對公式做一下修改,讓它包含表頭,并且將排序規則書寫進公式中,讓公式更加的完整,無需借助任何輔助列,
=VSTACK(A1:C1,SORTBY(A2:C9,MATCH(B2:B9,{"1班";"3班";"2班"},0),1))
![]()
以上就是今天分享的全部內容,大家可以操作練習一下,才能快速掌握!
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.