【Excel】统计不重复数据的个数,设置单元格不允许出现重复数据
前篇文章我們介紹了一下Excel中如何設置數據有效性以及COUNTIF函數的用法,這篇文章主要介紹有重復數據時如何統計不重復數據的個數以及通過數據有效性去設置單元格不允許出現重復數據。
統計單列不重復的個數
如下圖所示,要統計B列數據的不重復個數,也就是通過、不適用、未測試、不通過總共4個。應該如何用公式計算呢?
我們可以在E6單元格輸入公式=SUMPRODUCT(1/COUNTIF(B2:B16,B2:B16)),即可統計出B列B2:A16單元格區域的不重復值的個數。
公式解釋:COUNTIF(B2:B16,B2:B16)將對B2:A16單元格區域中的每個數據進行個數統計,也就是B2:B16單元格區域中B2單元格數值的個數是COUNTIF(B2:B16,B2),B2:B16單元格區域中B3單元格數值的個數是COUNTIF(B2:B16,B3)。。。以此類推,相當于=COUNTIF(B2:B16,{B2;B3;...;B16}),最后的結果就是將每一單元格數值個數組成一個集合{9;2;2;9;...;2)
然后通過1/統計的結果,將個數取倒數,1/COUNTIF(B2:B16,B2:B16),得到的結果是={1/9;0.5;0.5;1/9;...;0.5}舉例說明,由于數值"通過",在B2:B16單元格區域中有9個,取倒數后就是1/9,9個1/9相加就等于1。也就是將9個重復的"通過"算作了1個,以此類推其它數值。最后用SUMPRODUCT函數將這些結果相加就得到了總的不重復個數。SUMPRODUCT說白了它的一個簡單用法就是對集合中的數值進行求和,比如:SUMPRODUCT({1,2,3})相當1+2+3
單列單元格中不允許輸入重復值
工作中有時我們需要限制某列輸入重復的數值,我們可以以下方法來實現。
單擊要設置的列的列標簽全選該列,然后單擊“數據”選項卡下的“數據工具”組中的“數據有效性”命令按鈕。
在彈出的“數據有效性”對話框下的“設置”選項卡“有效性條件允許”中設置“自定義”,然后在公式區域選擇框中輸入公式=COUNTIF(A:A,$A1)=1,其中如果活動單元格是A1,就輸入公式=COUNTIF(A:A,$A1)=1,活動單元格是A2,就輸入公式=COUNTIF(A:A,$A2)=1,以此類推,最后單擊“確定”按鈕。
然后在A列輸入重復的數據時將會彈出如下圖所示的提示:
有點可惜,如果A列原先就有重復的數據,設置時是不會提示的,而且重復的數據不會改變(這種情況可以限制我們改動重復的數據,不過沒什么用處)。此外復制相同重復的數據,也是可以的,不會提示輸入值非法。
那有沒有什么辦法解決這個問題呢?其實我們可以通過圈釋無效數據方法標記重復的數據。我們可以點擊“數據有效性”,然后在選擇“圈劃無效數據”,然后我們發現,A列有重復的數據都被自動圈劃起來,這時我們可以確認是允許重復還是不允許重復輸入。
下篇文章將會介紹如何去除某列中重復的數據,然后再詳細介紹一下SUMPRODUCT函數的用法。
總結
以上是生活随笔為你收集整理的【Excel】统计不重复数据的个数,设置单元格不允许出现重复数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 带你一起学计算机专业英语!(IT行业、四
- 下一篇: brython的问题