tft每日頭條

 > 圖文

 > excel去重公式排序

excel去重公式排序

圖文 更新时间:2024-09-05 21:20:16

excel去重公式排序?公式解讀 第三期 -單元格中數字的去重排序,今天小編就來聊一聊關于excel去重公式排序?接下來我們就一起去研究一下吧!

excel去重公式排序(單元格中數字去重排序思路及公式詳解)1

excel去重公式排序

公式解讀 第三期 -單元格中數字的去重排序!

本期涉及到函數較多,你可以一次性根據這個案例,學習多少很多常用 函數的用法,同時我也會講解思路,這個很重要,思路決定了出路。

直接先看一下我們的效果圖:

效果圖

公式:=REPT(0,ISNUMBER(FIND(0,A2)))&SUBSTITUTE(SUM(ISNUMBER(FIND(ROW($1:$9),A2))*ROW($1:$9)*10^(10-ROW($1:$9))),0,)

庖丁解牛:整體來看,公式分兩個部分(FM表示FORMULA):

FM1:REPT(0,ISNUMBER(FIND(0,A2)))

FM2: SUBSTITUTE(SUM(ISNUMBER(FIND(ROW($1:$9),A2))*ROW($1:$9)*10^(10-ROW($1:$9))),0,)

下面我們分别剖析:

第一部分:0怎麼處理

公式:REPT(0,ISNUMBER(FIND(0,A2)))

功能:判斷A2中是否含有0,如果有就顯示0,否則顯示為空

剖析:1.1FIND(0,A2):查詢A2中是否有0,如果有就會返回在第一次出現在其中的位置,結果是一個數值,否則返回#VALUE!錯誤

示例:從截圖中可以看出,10中含所有0,0在第二位,所以返回2;11中沒有0,所以返回#VALUE!錯誤

FIND(0,A2)效果圖

1.2ISNUMBER:比較簡單,如同其名,用于判斷是否是數值。

在1.1中,我們判斷的結果要不是數值,要不錯誤值,返回TRUE或者FALSE

ISNUMBER效果圖

1.3 、REPT:這是第一部分的重點,因為很少有人這麼用。一般肯定想到IF函數。其實效果一樣,但是簡潔一些!其中有兩點也是使用比較巧妙的

a、FALSE在特定情況表示0,TRUE表示1

b、REPT:重複函數,這裡重複1次或者0次,重複0就顯示空(重點)

如此我們便解決了是否包含0的問題。

REPT

第二部分:非0部分去重提取

第二部分相對複雜一些,不過也不用擔心,我們一般遇到這種公式是從外向内解析的。但是給大家解釋我們就得從内開始,否則你不知道内部,很難看懂。

公式:SUBSTITUTE(SUM(ISNUMBER(FIND(ROW($1:$9),A2))*ROW($1:$9)*10^(10-ROW($1:$9))),0,)

2.1、ISNUMBER(FIND(ROW($1:$9),A2)):之所以直接整體拿出來講,是因為和我們第一部分分類似,隻是這次查詢的不是一個0,而是查詢1-9,看看是否在其中出現過,如果出現返回其對應的位置,否則錯誤,通過ISNUMBER知道是否存在。

示例:通過按下F9,我們可以看到顯示的對應的結果{TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}

隻有起三個是TRUE,說明隻包含1-3,其他無

ISNUMBER(FIND(ROW($1:$9),A2)) 轉化後的結果圖

2.2、我們我們把2.1基礎上再乘以1-9,一一對應相乘,那麼TRUE就是返回對應的數值,否則返回0公式:ISNUMBER(FIND(ROW($1:$9),A2))*ROW($1:$9)結果:{1;2;3;0;0;0;0;0;0}

現在是一個常量數組,我們要向他們可以123這種,隻需要把他們擴大10對次方,然後相加即可比如{1000,200,30} 相加就是1230

2.3、10^(10-ROW($1:$9)):此部分就是我們上面說的10的次方這裡相當于:10^({9;8;7;6;5;4;3;2;1})

如果還看不明白我們再展開就是:{10^9,10^8,10^7,10^6,10^5,10^4,10^310^2,10^1}

也就是:{1000000000;100000000;10000000;1000000;100000;10000;1000;100;10}在2.2中我們得到了,如果存在1-9的中的數就是線上對應的數值,否則就返回0,

那麼二者相乘結果:ISNUMBER(FIND(ROW($1:$9),A2))*ROW($1:$9)*10^(10-ROW($1:$9)){1000000000;200000000;30000000;0;0;0;0;0;0}這裡更多的是數理邏輯要清晰。

2.4 SUM(2.3的結果):就是把{}中的每個數值相加,可以得到1230000000

最後我們把0替換掉即可

2.5SUBSTITUTE(2.4的結果,0,""),SUBSTITUTE函數提到替換作用,把0替換成空。

再測試一下其他數據:

如果有0:

OK!本期公式庖丁解牛就到這裡!小編已盡力解析,如還有什麼地方不是很透徹的老鐵,歡迎留言交流!知無不言,言無不盡!

這裡是 EXCEL辦公實戰,歡迎關注我們!

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved