大家好, 今天和大家分享的"如何篩選出大於80且小於90的資料?", 具體要求是這樣的, 根據C列的建築面積, 把大於80m²且小於90²的資料找出來,
一、解法1, 輔助列+高級篩選
1、輔助列的公式截圖
2、公式
=--LEFT(C2,LEN(C2)-1)更多Excel學習和問題請加群:289393114、570064677
3、公式解釋
由於C列有文本字元M²,所以有len()-1得到從左邊提取數位的個數
文本函數Left提取出來的數位是文本, 所以要加--轉換一下, 把文本型的數位轉為數值型的數位
另注意高級篩選要注意兩點, 條件區域一定要有列欄位, 第2點, 而且關係兩個條件要寫在一行, 如果是或者關係要分在兩行寫
4、動畫操作
二、直接函數實現
1、公式截圖
2、公式
=IFERROR(INDEX(A$1:A$10,SMALL(IF((--LEFT($C$2:$C$10,LEN($C$2:$C$10)-1)>80)*(--LEFT($C$2:$C$10,LEN($C$2:$C$10)-1)<90),ROW($C$2:$C$10),2^20),ROW(B1))),"")
3、公式解釋
(--LEFT($C$2:$C$10,LEN($C$2:$C$10)-1)>80)*(--LEFT($C$2:$C$10,LEN($C$2:$C$10)-1)<90)同時滿足這兩個條件中間用乘號, 如果只要滿足一個就可以了, 中間用加號,
為什麼len函數後面要減1, 因為最右邊包含一個字元,
為什麼lfet前面要加--?, 因為文本函left函數提取是文本型數位
用if判斷, 如果滿足這兩個條件, 就顯示它們所在的行號, 否則就顯示2^20, 這個是2010版最大的行號1048576行
用small函數把滿足條件的行號從小到大引用出來, 作index函數第2參數, index函數第1參數資料來源用的是絕對行引用, 下拉不變, 右拉要變, 這個地方用得很經典。
最外層用iferror來遮罩錯誤值
記得是陣列公式, 把公式複製到編輯欄, 然後三鍵一齊下, Ctrl+Shift+回車