Excel獨特功能 - 找到唯一值的最快方法
教程探討瞭如何使用唯一的函數和動態數組來獲得Excel中的唯一值。您將學習一個簡單的公式,以根據條件在多個列中在列或行中找到唯一的值。
在以前的Excel版本中,提取唯一值列表是一個艱鉅的挑戰。我們有一篇特別的文章,展示瞭如何找到僅發生一次的唯一唯一,請在列表中提取所有不同的項目,忽略空白等。每個任務都需要聯合使用多個功能和只有Excel Gurus才能完全理解的多行陣列公式。
Excel 365中唯一功能的引入改變了一切!過去的火箭科學變得像ABC一樣容易。現在,您無需成為公式專家即可根據一個或多個標準從一個或多個標準中獲取獨特的值,並按字母順序排列結果。所有人都使用簡單的公式完成,每個人都可以閱讀並根據自己的需求進行調整。
Excel獨特功能
Excel中的唯一函數返回範圍或數組中唯一值的列表。它可以與任何數據類型一起使用:文本,數字,日期,時間和。
該函數在動態數組函數下分類。結果是一個動態陣列,該陣列自動垂直或水平散佈到相鄰的單元格中。
Excel唯一函數的語法如下:
唯一(數組,[by_col],[恰好_once])在哪裡:
數組(必需) - 返回唯一值的範圍或數組。
BY_COL (可選) - 指示如何比較數據的邏輯值:
- 正確 - 比較跨列的數據。
- false或省略(默認) - 比較行跨行的數據。
恰好_once (可選) - 一個邏輯值定義了哪些值被認為是唯一的:
- true-返回僅發生一次的值,這是唯一的數據庫概念。
- false或省略(默認) - 返回範圍或數組中的所有不同(不同)值。
筆記。當前,唯一功能僅在Microsoft 365和Excel 2021的Excel中可用。 Excel2019,2016及更早的函數不支持動態陣列公式,因此在這些版本中不可用唯一的功能。
Excel中的基本獨特公式
以下是其最簡單形式的Excel唯一值公式。
目的是從B2:B10範圍內提取唯一名稱的列表。為此,我們在D2中輸入以下公式:
=UNIQUE(B2:B10)
請注意,第二參數和第三參數被省略了,因為在我們的情況下默認值可以很好地工作 - 我們正在將行相互比較,並希望返回該範圍內的所有不同名稱。
當您按Enter鍵完成該公式時,Excel將在D2中輸出第一個找到的名稱,將其他名稱溢出到下面的單元格中。結果,您在列中具有所有唯一值:
如果您的數據遍布從B2到I2的列,請將2 nd參數設置為True以相互比較列:
=UNIQUE(B2:I2,TRUE)
在B4中鍵入上述公式,按Enter鍵,結果將水平溢出到右側的單元格中。因此,您將連續獲得唯一的值:
提示。要在多列數組中找到唯一的值並將其返回一列或行中,請與托托爾或託托函數一起使用,如下所示:
- 從多列範圍中提取唯一值
- 將多列範圍從多列範圍提取到一行
Excel獨特功能 - 提示和筆記
唯一是一個新功能,就像其他動態數組功能一樣,您應該知道一些特殊性:
- 如果由unique返回的數組是最終結果(即未傳遞到另一個功能),則Excel會動態創建適當的範圍並通過結果將其填充。該公式只需要在一個單元格中輸入。重要的是,您必須將足夠的空單元格向下和/或在進入公式的單元格的右側,否則會發生#spill誤差。
- 當源數據更改時,結果會自動更新。但是,除非更改數組參考,否則在公式中不包含在引用數組之外的新條目。如果您希望該數組自動響應源範圍的調整大小,請將範圍轉換為Excel表並使用結構化引用,或創建動態命名範圍。
- 僅在兩個工作簿打開時,不同的Excel文件之間的動態陣列才能起作用。如果源工作簿已關閉,則鏈接的唯一公式將返回#ref!錯誤。
- 像其他動態數組功能一樣,唯一隻能在正常範圍內使用,而不是表格。將其放在Excel表中時,它將返回#spill!錯誤。
如何在Excel-公式示例中找到唯一值
以下示例顯示了Excel中唯一功能的一些實際用途。主要思想是根據您的觀點提取獨特的值或以最簡單的方式刪除重複項。
提取僅發生一次的獨特值
要獲取準確出現在指定範圍中一次的值列表,請設置True唯一的3 rd參數。
例如,要一次提取獲獎者清單上的名稱,請使用此公式:
=UNIQUE(B2:B10,,TRUE)
其中b2:b10是源範圍,而第二個參數( by_col )是錯誤的或省略了,因為我們的數據是在行中組織的。
找到不止一次發生的不同值
如果您追求相反的目標,IE希望獲得一個以上出現在給定範圍內的值列表,那麼將唯一函數與過濾器和Countif一起使用:
唯一(falter( range ,countif(範圍,範圍)> 1))例如,要提取B2:B10中發生的不同名稱,您可以使用此公式:
=UNIQUE(FILTER(B2:B10, COUNTIF(B2:B10, B2:B10)>1))
該公式如何工作:
在公式的核心中,過濾器函數根據countif函數返回的事件計數過濾出重複條目。在我們的情況下,Countif的結果是一系列計數:
{4;1;3;4;4;1;3;4;3}
比較操作(> 1)將上述數組更改為True和False值,其中TRUE代表不止一次出現的項目:
{TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE;TRUE}
將此數組交出以過濾為包括參數,並告訴函數哪些值包含在結果數組中:
{"Andrew";"David";"Andrew";"Andrew";"David";"Andrew";"David"}
您可以注意到,只有與True生存相對應的值。
上面的數組轉到了唯一的數組參數,在刪除重複後,它輸出了最終結果:
{"Andrew";"David"}
提示。以類似的方式,您可以濾除出現超過兩次(> 2),超過三次(> 3)等的唯一值。為此,只需更改邏輯比較中的數字即可。
在多列(唯一行)中找到唯一值
在要比較兩個或多個列並返回它們之間的唯一值時,將所有目標列包括在數組參數中。
例如,要返回獲獎者的唯一名字(A列)和姓氏(B列),我們在E2中輸入此公式:
=UNIQUE(A2:B10)
按Enter鍵會產生以下結果:
為了獲得獨特的行,即具有A,B和C列中值獨特組合的條目,這是要使用的公式:
=UNIQUE(A2:C10)
非常簡單,不是嗎? :)
獲取按字母順序排序的唯一值列表
您通常如何在Excel中按字母順序排列?正確,使用內置的排序或過濾器功能。問題在於您需要每次更改源數據時重新分配,因為與Excel公式不同,該公式會自動重新計算工作表中的每個更改,因此必須手動重新應用功能。
隨著動態陣列功能的引入,這個問題已經消失了!您需要做的就是簡單地將排序函數繞圍繞常規唯一公式進行扭曲,例如:
排序(unique(array))例如,要在A至C列中提取唯一值並將結果從A到Z排列,請使用此公式:
=SORT(UNIQUE(A2:C10))
與上面的示例相比,輸出更容易感知和使用。例如,我們可以清楚地看到,安德魯(Andrew)和大衛(David)在兩項不同的運動中都是贏家。
提示。在此示例中,我們將第1列中的值從A到Z排序。這些是Sort函數的默認值,因此省略了可選的sort_index和sort_order參數。如果您想按其他列或以不同的順序(從z到A或從最高到最小)對結果進行排序,如Sort Function教程中所述,設置了第二個和第三個參數。
在多列中找到唯一的值,然後連接到一個單元格中
默認情況下,在多個列中搜索時,Excel唯一函數在單獨的單元格中輸出每個值。也許,您會發現在單個單元格中獲得結果更方便?
為了實現這一目標,而不是引用整個範圍,而是使用anmpersand(&)將列加入並將所需的定界符放在中間。
例如,我們在a2:a10和b2:b10中的姓氏中的名字串聯,用空格字符(“”):
=UNIQUE(A2:A10&" "&B2:B10)
結果,我們在一列中有一個全名列表:
根據標準獲取唯一值的列表
要通過條件提取唯一值,請一起使用Excel唯一和過濾器功能:
- 過濾器函數僅將數據限制為滿足條件的值。
- 唯一功能從過濾列表中刪除了重複項。
這是過濾唯一值公式的通用版本:
唯一(濾波器(陣列, criteria_range =標準)))在此示例中,讓我們獲取一項特定運動中的獲勝者列表。對於初學者來說,我們在某些細胞中輸入了感興趣的運動,例如F1。然後,使用以下公式獲取唯一名稱:
=UNIQUE(FILTER(A2:B10, C2:C10=F1))
其中A2:B10是搜索唯一值的範圍,而C2:C10是檢查標準的範圍。
根據多個標準過濾唯一值
要在兩個或多個條件下過濾唯一的值,請使用如下所示的表達式來構建過濾器函數所需的標準:
唯一(allay(array,( criteria_range1 = criteria1 )) *( criteria_range2 = criteria2 )))))))))公式的結果是所有指定條件均為真實條目的唯一條目列表。就excel而言,這稱為邏輯。
要查看行動中的公式,讓我們從G1(標準1)和G2年齡(標準2)中獲得這項運動的獨特獲勝者列表。
在A2:B10中的源範圍內,C2:C10中的運動(Criteria_range 1)和D2:D10(criteria_range 2)中的年齡,該公式採用此形式:
=UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10<g2></g2>
並準確地返回我們正在尋找的結果:
該公式如何工作:
這是對公式邏輯的高級解釋:
在包含過濾器函數的參數中,您提供兩個或多個範圍/標準對。每個邏輯表達式的結果是真實和錯誤值的數組。陣列的乘法將邏輯值脅迫到數字,並產生1和0的數組。由於乘以零總是給出零,因此只有滿足所有條件的條目在最終數組中具有1個。過濾器功能將與0相對應的項目過濾,然後將結果移交為唯一。
有關更多信息,請參閱具有多個使用和邏輯的多個標準的過濾器。
帶有多個或標準的唯一值
要根據多個或標準獲取唯一值列表,即當此或該標準為真時,請添加邏輯表達式而不是乘以它們:
唯一(filter(array,( criteria_range1 = criteria1 )( criteria_range2 = criteria2 )))))))))例如,要在足球或曲棍球中展示獲獎者,您可以使用此公式:
=UNIQUE(FILTER(A2:B10, (C2:C10="Soccer") (C2:C10="Hockey")))
如果需要,您當然可以在單獨的單元格中輸入標準,並參考如下所示:
=UNIQUE(FILTER(A2:B10, (C2:C10=G1) (C2:C10=G2)))
該公式如何工作:
就像測試多個和標準時一樣,您將幾個邏輯表達式放在濾波器函數的包括參數中,每個函數都返回一個真實和錯誤的值。當添加這些數組時,一個或多個條件為true的項目將具有1個,並且所有標準為false的項目都將具有0。結果,任何符合任何單個條件的條目都可以將其輸入到獨特的數組中。
有關更多信息,請參閱具有多個使用或邏輯的多個標準的過濾器。
在Excel中獲得唯一的值忽略空白
如果您正在使用包含一些差距的數據集,則使用常規公式獲得的唯一唯一列表可能具有空單元格和/或零值。之所以發生這種情況,是因為Excel唯一函數旨在返回一個範圍內的所有不同值,包括空白。因此,如果您的源範圍同時具有零和空白單元格,則唯一列表將包含2個零,一個代表空白單元格,另一個代表一個零值 - 零值本身。此外,如果源數據包含由某些公式返回的空字符串,則Uique列表還將包含一個空字符串(“”),在視覺上看起來像空白單元格:
要獲取沒有空白的唯一值列表,這就是您需要做的:
- 通過使用過濾器函數過濾空白單元格和空字符串。
- 利用唯一函數將結果僅限於唯一值。
以通用形式,該公式看起來如下:
唯一(濾鏡,範圍“”))在此示例中,D2中的公式為:
=UNIQUE(FILTER(B2:B12, B2:B12""))
結果,Excel返回沒有空單元的唯一名稱列表:
筆記。如果原始數據包含零,則唯一列表中將包含一個零值。
在特定列中找到唯一值
有時,您可能需要從彼此不相鄰的兩個或多個列中提取唯一值。有時,您可能還需要在結果列表中重新排序列。可以在選擇功能的幫助下完成這兩個任務。
唯一(選擇({1,2,…}, range1 , range2 ))從我們的示例表中,假設您希望根據A和C列中的值獲得獲獎者列表,並按照此順序排列結果:首先是Sport(C列)(C列),然後是運動員名稱(A列A)。為了完成它,我們構建了這個公式:
=UNIQUE(CHOOSE({1,2}, C2:C10, A2:A10))
並得到以下結果:
該公式如何工作:
選擇函數從指定的列返回值的二維值數組。在我們的情況下,它還交換了列的順序。
{“籃球”,“安德魯”; “籃球”,“貝蒂”; “排球”,“大衛”; “籃球”,“安德魯”; “曲棍球”,“安德魯”; “足球”,“羅伯特”; “排球”,“大衛”; “曲棍球”,“安德魯”; “籃球”,“大衛”}
從上面的數組中,唯一功能返回唯一記錄的列表。
查找獨特的值並處理錯誤
我們在本教程工作中討論的獨特公式非常完美……只要至少有一個符合指定標準的價值。如果公式找不到任何東西,#calc!發生錯誤:
為了防止這種情況發生,只需將您的公式包裝在IfError函數中即可。
例如,如果找不到符合條件的唯一值,您什麼也沒顯示,即一個空字符串(“”):
=IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10<g2></g2>
或者,您可以清楚地通知您的用戶,找不到結果:
=IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10<g2 results><p><img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174347193269059.png" class="lazy" alt="Excel獨特功能 - 找到唯一值的最快方法" ></p>
<h2 id="Excel獨特功能不起作用"> Excel獨特功能不起作用</h2>
<p>如您所見,獨特功能的出現使在Excel中找到獨特的價值非常容易。如果您的公式突然導致錯誤,則最有可能是以下一個。</p>
<h3 id="姓名-錯誤"> #姓名?錯誤</h3>
<p>如果您在不支持此功能的Excel版本中使用唯一公式,則會發生。</p>
<p>當前,唯一功能僅在Excel 365和2021中可用。如果您有不同的版本,則可能在本教程中找到適當的解決方案:如何在Excel 2019,Excel 2016及更早之前獲得唯一值。</p>
<p> #Name?支持版本的錯誤表明該函數的名稱拼寫錯誤。有關更多詳細信息,請參見如何在Excel中修復#NAME錯誤。</p>
<h3 id="spill錯誤"> #spill錯誤</h3>
<p>如果溢出範圍內的一個或多個單元格並非完全空白,則會發生。</p>
<p><img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174347193419432.png" class="lazy" alt="Excel獨特功能 - 找到唯一值的最快方法" ></p></g2>
要解決錯誤,只需清除或刪除非空單元。要確切查看哪些單元格進入途徑,請單擊錯誤指示器,然後單擊“選擇阻塞單元” 。有關更多信息,請參閱#spill! Excel的錯誤 - 原因和修復。
這就是在Excel中找到獨特價值的方法。我感謝您閱讀,並希望下週在我們的博客上見到您!
練習工作簿下載
Excel唯一值公式示例(.xlsx文件)
以上是Excel獨特功能 - 找到唯一值的最快方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)