EXCEL小技巧 | 取得不重複資料的超多種方法

2024/02/05閱讀時間約 6 分鐘
raw-image


這集要來分享如何用EXCEL把不重複的資料全部提取出來,主要會分為EXCEL內建功能的方法與函數法


看教學影片之前可以先下載練習檔,學中做、做中學效果更好哦。

檔案下載




EXCEL內建功能

<▶️影片教學>




<📝圖文教學>

✨1.移除重複

  1. 選取資料範圍
  2. 資料
  3. 資料工具
  4. 移除重複
  5. 確定
raw-image



✨2.進階篩選

  1. 選取資料範圍
  2. 資料
  3. 排序與篩選
  4. 進階篩選
  5. 將結果複製到其他地方
  6. 點選要貼上不重複資料的儲存格
  7. 不選重複的紀錄打勾
raw-image


✨3.樞紐分析

  1. 選取資料範圍
  2. 插入
  3. 表格
  4. 樞紐分析表
  5. 現有工作表
  6. 點選樞紐要放置的儲存格
  7. 將樞紐分析表欄位打勾
raw-image





<函數法取得不重複資料>

✨1.365函數

✍🏾UNIQUE移除重複
函數說明=UNIQUE (範圍)

D5=UNIQUE(B5:B15)

365的新函數真的是太方便了,直接UNIQUE套上範圍不重複資料馬上就出現了

raw-image






✨2.通用版函數-輔助欄

  1. C5=(COUNTIF($B$5:B5,B5)=1)*1
  2. D5=SUM($C$5:C5)
  3. E5=IFERROR(INDEX(B:B,MATCH(ROW(A1),D:D,0)),"")
raw-image


📝函數說明

C5=COUNTIF($B$5:B5,B5)

利用COUNTIF找出每一個姓名依序出現的次數。

PS.第一個引數的範圍起點要加上$絕對參照

延伸閱讀:學函數前必學觀念:絕對參照

raw-image


C5=(COUNTIF($B$5:B5,B5)=1)*1

COUNTIF的結果=1,這樣就會讓第一次出現的姓名出現TRUE,並且*1之後第一次出現的姓名就會顯示1,不是第1次出現的就會顯示0。

延伸閱讀:EXCEL必學觀念 | 布林符號 | 布林邏輯

raw-image


D5=SUM($C$5:C5)

把COUNTIF的1跟0,用SUM累加(範圍起點要加$絕對參照),就會得到第一次出現姓名的流水編號。

raw-image



E5=MATCH(ROW(A1),D:D,0)

利用MATCH把第一次出現的流水號位於第幾列給找出來

raw-image


E5=INDEX(B:B,MATCH(ROW(A1),D:D,0))

用INDEX把MTACH找到的列號,把B欄的資料提取出來。

raw-image


=IFERROR(INDEX(B:B,MATCH(ROW(A1),D:D,0)),"")

因為不重複的姓名只有3個,所以其他填滿的儲存格找不到資料而顯示錯誤,這時候就套上IFERROR函數,就可以將正常的錯誤給隱藏起來了。

raw-image






✨3.通用版函數-陣列函數

D5=IFERROR(INDEX(B:B,SMALL(IF(MATCH($B$5:$B$15,$B$5:$B$15,0)=ROW($5:$15)-4,ROW($5:$15)),ROW(A1))),"")

2019以下的版本,使用陣列函數輸入時必須使用CTRL+SHIFT+ENTER取代ENTER輸入。

延伸閱讀:EXCEL多結果查詢必學的函數(萬金油)

raw-image


📝函數說明

=MATCH($B$5:$B$15,$B$5:$B$15,0)

使用MATCH函數,將第一個引數與第二個引數都套用要提取資料的範圍,並且用$絕對參照固定。

這樣就會得到每個不重複的姓名第一次出現的位置編號。

EX:
王大捶第一次出現的位置是在資料的第1筆
馬火亨第一次出現的位置是在資料的第2筆
王康皓第一次出現的位置是在資料的第5筆
raw-image


=MATCH($B$5:$B$15,$B$5:$B$15,0)=ROW($5:$15)-4

把MATCH得到每個姓名的第一個位置,用布林邏輯判斷,是否等於相對應的列號。

因為第一筆資料是從第5列開始,所以要將ROW()的結果-4這樣列號與資料位置才會相符。
raw-image


=IF(MATCH($B$5:$B$15,$B$5:$B$15,0)=ROW($5:$15)-4,ROW($5:$15))

用IF判斷TURE跟FLASE的結果,如果為TRUE就回傳相對應的列號ROW($5:$15),這樣只要是TRUE的儲存格就會出現第一次出現的姓名所在的列號

raw-image


=SMALL(IF(MATCH($B$5:$B$15,$B$5:$B$15,0)=ROW($5:$15)-4,ROW($5:$15)),ROW(A1))

用SMALL配合ROW函數,依序將第一次出現的姓名列號依序由小到大排列。

raw-image


=INDEX(B:B,SMALL(IF(MATCH($B$5:$B$15,$B$5:$B$15,0)=ROW($5:$15)-4,ROW($5:$15)),ROW(A1)))

用INDEX函數把相對應的列號的姓名提取出來,也就是第一次出現的姓名。

raw-image


=IFERROR(INDEX(B:B,SMALL(IF(MATCH($B$5:$B$15,$B$5:$B$15,0)=ROW($5:$15)-4,ROW($5:$15)),ROW(A1))),"")

因為不重複的姓名只有3個,所以其他填滿的儲存格找不到資料而顯示錯誤,這時候就套上IFERROR函數,就可以將正常的錯誤給隱藏起來了。

raw-image


如果你很有耐心的把這篇全部看完,你應該會發現天啊版本差異也太大了吧!!!

🎯365函數只要
=UNIQUE(B5:B15)
🎯而不是365輔助欄的話
C5=(COUNTIF($B$5:B5,B5)=1)*1
D5=SUM($C$5:C5)
E5=IFERROR(INDEX(B:B,MATCH(ROW(A1),D:D,0)),"")
🎯而不是365陣列函數的話
=IFERROR(INDEX(B:B,SMALL(IF(MATCH($B$5:$B$15,$B$5:$B$15,0)=ROW($5:$15)-4,ROW($5:$15)),ROW(A1))),"")
有沒有衝動想要365訂閱下去了呢😆

延伸閱讀:很多人問要不要訂閱微軟的OFFICE 365 答:不要!!千萬不要!!!

raw-image



  • 👍喜歡的話可以幫忙案個讚、分享來幫助更多人或是右下珍藏起來哦
  • 💭留言回復「職場生存讚」讓我知道你把這個小技巧學起來了
  • ❤️追蹤我的方格子,學習更多職場小技巧
  • 請我喝杯咖啡,鼓勵我更有動力分享更多優質內容
  • 📈訂閱EXCEL設計新思維,學習更多更深更廣的職場技能

😎可以找到我的地方

  1. LINE社群
  2. IG
  3. FB粉絲團
  4. YOUTUBE
  5. TIKTOK
  6. DCARD
raw-image

raw-image


7.8K會員
193內容數
此專題旨在幫助職場人士提升工作效率、提升專注力並更有效地管理時間,以達到更高的生產力和工作成果。在這個快節奏且競爭激烈的職場環境中,掌握提升效率的技巧尤為重要,主要會著重於分享OFFICE上最常使用的軟體,EXCEL、PPT、WORD各種增加效率的小技巧。
留言0
查看全部
發表第一個留言支持創作者!