表格設計 | 製作一個可以自動升降序排列的Excel表格

大家好,我是徐軍泰!

今天給大家介紹一個表格設計案例。

在表格中對數據進行排序,通常我們都是調用數據選項卡下的排序功能來實現的,操作起來不夠快捷。

如果能在表格旁邊添加兩個按鈕,直接點擊按鈕實現升降序排列,那就方便多了。


表格設計 | 製作一個可以自動升降序排列的Excel表格


今天,教大家制作可以自動升降序排列的Excel表格製作——不用VBA,只用函數+控件即可完成。


01 準備數據源


表格設計 | 製作一個可以自動升降序排列的Excel表格


如圖,B、C列是要進行排序的數據源,考慮到有可能有相同數據,因此加了D列輔助列,作為後續排序時真正引用的數據源。

D列公式,以D3單元格為例:=C3+ROW()/(10^5)


02 製作控件

在【開發工具】選項卡下,插入控件,選擇單選按鈕,繪製並複製單選按鈕,將按鈕分別命名為升序、降序。

右鍵第1個單選按鈕,打開【設置控件格式】,將單元格鏈接設置為H2單元格:


表格設計 | 製作一個可以自動升降序排列的Excel表格


設置完畢後,當選擇升序按鈕時,H2返回1,當選擇降序按鈕時,H2返回2。


表格設計 | 製作一個可以自動升降序排列的Excel表格


03 編寫公式


表格設計 | 製作一個可以自動升降序排列的Excel表格


在H列編寫公式並向下複製,以H3單元格為例,公式為:

=IF($H$2=1,SMALL($D$3:$D$14,ROW(A1)),LARGE($D$3:$D$14,ROW(A1)))

即,當H2等於1時,依次返回第N個最小值;當H2等於2時,依次返回第N個最大值,N為1、2、3、4、……

在G列編寫公式並向下複製,以G3單元格為例,公式為:

=INDEX($B$3:$B$14,MATCH(H3,$D$3:$D$14,0))

即通過數值來匹配對應的姓名(數值在第1步已經通過處理,避免了重複值可能會引起的匹配錯誤)。

現在我們已經實現了數據的升降序排列,可以點按鈕測試。


04 條件格式及自定義格式優化


表格設計 | 製作一個可以自動升降序排列的Excel表格


為了讓表格更直觀,我們可以給H列數據加上數據條,具體在條件格式中設置,不再贅述。

另外 ,H2單元格中的數字1和2,我們可以利用自定義格式將其顯示為“升序”或“降序”。


表格設計 | 製作一個可以自動升降序排列的Excel表格


以上就是今天的內容,很簡單吧~

多說一句,這是一個非常好的學習案例,是對函數、條件格式、自定義格式、控件等綜合知識的應用,對以上模塊知識不是太瞭解的同學可以當作一個瞭解的機會。

也建議大家儘可能系統學習一下這些知識,每一個知識模塊之間都是有聯繫的,只有紮實掌握好每個模塊知識,才能做到靈活應用。

喜歡我的作品,請給我留言,好的內容歡迎你轉發分享喲!

另外:關注後,私信回覆【函數】

免費領取4300套高顏值商務圖表+Excel函數數據分析課程【6節高清系列課程】


分享到:


相關文章: