Execl本身具有很方便的排序與篩選功能,下拉;數(shù)據(jù)”菜單即可選擇排序或篩選對數(shù)據(jù)清單進(jìn)行排序或篩選。但也有不足,首先無論排序或篩選都改變 了原清單的原貌,特別是清單的數(shù)據(jù)從其它工作表鏈接來而源數(shù)據(jù)發(fā)生變化時,或清單錄入新記錄時必須從新進(jìn)行排序或篩選。其次還有局限,例如排序只能最多對 三個關(guān)鍵字(三列數(shù)據(jù))排序,篩選對同一列數(shù)據(jù)可用;與”、或;或”條件篩選,但對不同列數(shù)據(jù)只能用;與”條件篩選。
例如對某張職工花 名冊工作簿,要求篩選出年齡大于25歲且小于50歲或年齡大于50歲或小于25歲都是可行的,如同時要求性別是男的或女的也是可行的。但要求篩選出女的年 齡在22歲到45歲,男的年齡在25歲到50歲時Execl本身具有的篩選功能則無能為力了。再者排序與篩選不能結(jié)合使用,即不能在排序時根據(jù)條件篩選出 來的記錄進(jìn)行排序。例如有一張職工資料清單,其中有的職工已經(jīng)退休,對在職職工的年齡進(jìn)行排序時無法剔除已退休職工的數(shù)據(jù)。
本文試圖用Execl的函數(shù)來解決上述問題。
一、用函數(shù)實(shí)現(xiàn)排序
題目:如 有一張工資表,A2:F501,共6列500行3000個單元格。表頭A1為姓名代碼(1至500)、B1為姓名、C1為津貼、D1為獎金、E1為工資、 F1收入合計?,F(xiàn)要求對職工收入從多到少排序,且在職工總收入相同時再按工資從多到少排序,在職工總收入和工資相同時再按獎金從多到少排序,在職工職工總 收入和工資、獎金相同時再按津貼從多到少排序。
方法:G1單元格填入公式
;=if(F2=0,10^100,INT(CONCATENATE(999-f2,999-e2,999-d2,999-c2)))”,
CONCATENATE 是一個拼合函數(shù),可以把30個以下的單元的數(shù)據(jù)拼合成一個數(shù)據(jù),這些被拼合的數(shù)據(jù)之間用逗號分開。用f2、e2等被拼合的數(shù)據(jù)用999來減,是為了使它們 位數(shù)相同。(假定任何一個職工的總收入少于899元)。被拼合成的函數(shù)是文本函數(shù),CONCATENATE與INT函數(shù)套用是為了使文本轉(zhuǎn)換為數(shù)字。最外 層的if函數(shù)是排序時用來剔除不進(jìn)行排序的記錄,在本例中指收入為零的記錄。(在上文提到的職工年齡排序,則公式改為;if(f2="退休", 10^100,.....)”,即剔除了退休職工。)
第二步把G1單元格的公式拖放到G500單元格(最簡便的方法是點(diǎn)擊G1單元格后向G1單元格右下方移動鼠標(biāo),見到黑十時雙擊鼠標(biāo)就完成了G1到G500的填充)。
第三步在在H2單元填入公式;=MATCH(SMALL(G:G,ROW(A1)),G:G,0)”與第二步一樣拖放到H501單元格。此公式實(shí)際上是 把三列公式合成一列公式,ROW(A1)即為A1的行數(shù)是1,隨著向下拖放依次為2、3、4...,SMALL(G:G,ROW(A1))為 G列中最小的數(shù)隨著向下拖放依次為第2、第3、..小的數(shù),MATCH(SMALL(G:G,ROW(A1)),G:G,0)即為G列各行的數(shù)據(jù)中最小、 第2、第3小等的數(shù)據(jù)在第幾行。
第四步把A1至F1單元格的表頭復(fù)制到I1至N1單元格,在I2單元格輸入公式 ;=INDEX($A$2:$F$501,$H2, COLUMN(A$1))”INDEX函數(shù)是一個引用函數(shù),即把$A$2:$F$501單元格列陣第$H2行第COLUMN(A$1)列的數(shù)據(jù)放入I2單 元格。然后把I2單元格的公式拖放到N2單元格,點(diǎn)擊N2單元格后向N2單元格右下方移動鼠標(biāo)見到黑十時雙擊鼠標(biāo)就完成了I2到N501單元格的填充到此全部完成。
以上敘述看似繁雜實(shí)際非常簡單,只要把A1至F1的表頭復(fù)制到I1至N1單元格,再分別在G1、H2、I2單元格輸入公式然后向下拖放,即使對EXCEL應(yīng)用不熟練的同志一分鍾內(nèi)便能完成。
對上述程序稍作變化還可得到更多用度。上面例子數(shù)據(jù)是從大到小排列的,如H列的函數(shù)中的SMALL改為LARGE,上面例子數(shù)據(jù)就從小到大排列了。如 H2單元格的公式改為;=IF(O1=1,MATCH(SMALL(G:G,ROW(A1)),G:G,0),MATCH(LARGE(G: G,ROW(A1)),G:G,0))”并把H2單元格的公式向下拖放。這樣在O1單元格輸入1上面例子數(shù)據(jù)是從大到小排列的,O1單元格輸入1以外的數(shù) 上面例子數(shù)據(jù)就從小到大排列了。
如在H列前插入若干列,如插入一列,則現(xiàn)在的H列輸入類似G列的公式,例如 ;=if(F2=0,10^100,d2)”,現(xiàn)在的I列的公式改為 ;=IF(P1=1,MATCH(SMALL(G:G,ROW(A1)),G:G,0),MATCH(SMALL(H:H,ROW(A1)),H:H,0)))” 即在P單元格輸入1以外的值就實(shí)現(xiàn)了按獎金大小排序.這樣只要通過改變P1(原來的O1單元格)單元格內(nèi)容的改變就能立即得到按不同要求的排序。
安卓Android 6.0無法連接手機(jī)的原因: 出現(xiàn)無法連接電腦問題原因......
閱讀Excel如何把想要的人篩選出來 Excel篩選數(shù)據(jù)的操作方法,可以在......
閱讀outlook郵箱作為一款功能十分齊全的軟件,讓用戶享受到了不錯的......
閱讀在使用我們的精品win10系統(tǒng)時,我們?nèi)粘枰M(jìn)行電源的相關(guān)......
閱讀ai怎么顯示定界框呢?如果各位親們還不了解的話,就來這里學(xué)習(xí)......
閱讀Excel表格是一款非常好用的數(shù)據(jù)處理軟件,在其中我們可以看使用各種圖表幫助我們進(jìn)行數(shù)簡單分析和比較。在插入圖表時我們也可以根據(jù)自己的實(shí)際需要選擇恰當(dāng)?shù)膱D表并設(shè)置一定的圖表樣式...
次閱讀
在Excel表格中進(jìn)行數(shù)據(jù)的編輯和處理是很多小伙伴的辦公常態(tài),在Excel表格中我們有時候還會將數(shù)據(jù)生成各種圖表,方便我們進(jìn)行數(shù)據(jù)的分析和處理。如果我們在Excel表格中插入折線圖后,希望更...
次閱讀
在需要編輯和處理數(shù)據(jù)時,我們通常都會首選Excel表格這款軟件,在Excel表格中我們不僅可以收集和存儲大量數(shù)據(jù),還可以在其中進(jìn)行各種專業(yè)化的數(shù)據(jù)處理。比如我們可以進(jìn)行一些基礎(chǔ)的加減...
次閱讀
excel是一款專門用來制作電子表格的文件,為用戶帶來了許多的便利和好處,當(dāng)用戶在excel軟件中編輯表格文件時,會發(fā)現(xiàn)其中的功能是很強(qiáng)大的,用戶簡單操作幾步即可完成表格數(shù)據(jù)的錄入和...
次閱讀
Excel表格是一款非常好用的數(shù)據(jù)軟件,很多小伙伴都在使用。如果我們需要在Excel表格中設(shè)置輸入指定內(nèi)容后變成特定的樣式效果,比如設(shè)置輸入數(shù)字1后自動變?yōu)榧t色等等,小伙伴們知道具體該...
次閱讀
很多小伙伴在編輯表格文檔的時候都會選擇使用Excel程序來進(jìn)行操作,因為Excel中的功能十分的豐富并且操作簡單。在使用Excel的過程中,有的小伙伴可能會遇到輸入的數(shù)字最后幾位變?yōu)椤?”的...
次閱讀
excel軟件是用戶用來編輯表格文件的辦公軟件,在這款軟件中有著許多實(shí)用的功能來解決用戶遇到的編輯問題,給用戶帶來了許多的好處,并且深受用戶的喜愛,當(dāng)用戶在使用這款辦公軟件時,...
次閱讀
在Excel表格中進(jìn)行數(shù)據(jù)的編輯和處理是很多小伙伴的辦公常態(tài),在Excel表格中我們有時候會需要在原數(shù)據(jù)后面添加統(tǒng)一的單位,比如我們有時候會需要在數(shù)據(jù)后面統(tǒng)一添加價格單位等等,這種情...
次閱讀
excel軟件中的功能是很豐富的,滿足了用戶對表格的編輯需求,當(dāng)用戶在編輯表格時,一般都少不了數(shù)據(jù)的整理與計算,為了更好的展示數(shù)據(jù)之間的關(guān)系聯(lián)系,用戶直接在表格中插入一些圖表直...
次閱讀
在Excel表格中有一個“定位條件”功能,使用該功能我們可以快速定位到指定單元格,比如我們可以快速定位到空值單元格,快速定位到最有一個單元格,快速定位到行內(nèi)容或者列內(nèi)容差異單元...
次閱讀
wps中excel表格怎樣算出日期減日期等于天數(shù)呢,話說不少用戶都在咨詢這個問題呢?下面就來小編這里看下wps中excel表格算出日期減日期等于天數(shù)的圖文操作步驟吧,需要的朋友可以參考下哦。...
次閱讀
很多小伙伴在編輯表格文檔時都會選擇使用Excel程序,因為在Excel程序中我們可以使用各種工具來對表格中的數(shù)據(jù)進(jìn)行編輯。當(dāng)我們想要快速得到一堆數(shù)據(jù)中排名前幾的數(shù)據(jù)時,我們只需要先打...
次閱讀
比較熟悉Excel表格的小伙伴們都知道,在Excel表格中有很多非常好用的函數(shù)公式,可以幫助我們進(jìn)行各種批量操作,進(jìn)行高效辦公。比如我們可以使用sum函數(shù)求和,使用sumif進(jìn)行條件求和,使用...
次閱讀
excel軟件是用戶日常工作中經(jīng)常使用的一款電子表格制作軟件,它為用戶提供了強(qiáng)大且實(shí)用的功能,讓用戶可以美化表格、設(shè)置單元格格式或是調(diào)整表格大小等,總之里面的功能能夠很好的滿足...
次閱讀
excel是一款專業(yè)的電子表格制作軟件,為用戶帶來了許多的便利和好處,當(dāng)用戶在excel軟件中編輯表格文件時,會發(fā)現(xiàn)其中的功能是很強(qiáng)大的,用戶不僅可以快速完成數(shù)據(jù)錄入,還可以調(diào)整單元...
次閱讀