資料來源為a列,要在c列中提取不重複的唯一值。
在此我們需要應用的函式有countif、match、index、iferror。
思路是利用countif+match定位不重複的行數,再使用index根據countif+match返回的行數,提取a列中不重複行單元格內的內容,而iferror用於排錯,當提取完唯一值後,當出現#n/a錯誤時顯示為空。
在c2單元格中輸入陣列公式:
=
注:
這個括號是同時安ctrl+shift+enter得到的陣列公式形式,無需輸入。
公式分析:
c2單元格內:
countif($c$1:c1,$a$2:$a$12)此部分公式,我們可以看到此時$c$1:c1不存在資料來源a2:a12中的任何值,所以陣列計算顯示為。
match(0,
countif($c$1:c1,$a$2:$a$12),0)此處match用以定位0在countif陣列中的位置,返回1。
index($a$2:$a$12,
match(0,
countif($c$1:c1,$a$2:$a$12)
,0))查詢a2:a12中,match返回行號所在單元格的內容「as-1001」。
iferror(index($a$2:$a$12,
match(0,
countif($c$1:c1,$a$2:$a$12)
,0)),"")最後黑色的公式iferror用於排錯,當提取完唯一值後,當出現#n/a錯誤時顯示為空。
拖拉c2單元格陣列公式至c12完成提取唯一值的操作
c3單元格內:
=
在向下拖拉陣列公式時,唯c2單元格會改變。用以確認下乙個唯一值所在位置。
本文**
kirin
C 生成唯一值函式
source c 生成唯一值函式 private string getguid 隨機生成如下字串 e92b8e30 a6e5 41f6 a6b9 188230a23dd2 格式說明 system.guid.newguid tostring format 格式說明符 返回值的格式 n 32位 xx 如...
winform開啟唯一視窗 建構函式傳值
製作登入窗體 製作乙個登陸窗體,實現點選按鈕關閉此窗體並開啟另乙個窗體 直接在按鈕點選事件中,例項化乙個想要開啟的窗體 使用show方法開啟,並把登陸窗體的visible屬性改為false form1 f1 new form1 f1.show this.visible false 另 這樣寫的話再關...
C 用Guid獲取不規則的唯一值 標識
在實際的設計當中,我們往往在許多地方需要用到不規則的唯一值 標識 比如在購物車id 資料標識 訊息佇列的標識等等。c 為我們提供了乙個guid,可以輕鬆的獲取到不規則的唯一值 標識 具體的方法如下 using system private static void creatguid 下面來寫乙個生成...