Re: [算表] 比對多組重複資料

看板Office作者 (David)時間17年前 (2008/09/30 18:47), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
最近都在解 (排列)組合.VBA 一時間也用"組合"來想這題 頓時陷入困境 被迫小憩一下來思考XD 還好睡個二十分鐘後發現不是那麼難~|||(不需排列組合) 確實要用到VLOOKUP等 首先把所有的項目列出來 (a b c ...這些 不重覆) 然後查出這些項目在三個條件下為第幾group 得到三個數字 方便起見,三個數字接起來(可用"|"間隔),成為關鍵字"key" 每列都往下找此key,找到就表"總是會被分到同一個群組",傳回資料(於N欄) 目前為止 結果長相為 I J K L M N O 條件一 條件二 條件三 key 全部項目(不重覆) 1 2 1 1|2|1 a b (O2) 1 2 1 1|2|1 b z 1 2 3 1|2|3 c #N/A 2 1 2 2|1|2 d f 2 2 2 2|2|2 e #N/A 2 1 2 2|1|2 f #N/A 2 3 2 2|3|2 g #N/A 3 3 3 3|3|3 h #N/A 3 4 3 3|4|3 i #N/A 1 2 1 1|2|1 z #N/A N欄即上述最後一步傳回的資料 這時還沒完成,因為同一組的可能有三個以上(若無 就這樣了) 為了看出效果,本例中在原資料加入"z",與ab同組 所以最終的答案應為 abz,df z依據以上的步驟,會在b的那一列被找到, 所以在O欄(O2為例) 只要依據左邊 N欄的資料(b), =VLOOKUP(N2,$M:$N,2,) 即可找到下一符合條件資料(z)。 為了讓結果好看點,把答案的位置(第幾列)求出來 再到另一處用SMALL來整理答案,完成. 位置 ANS 2 a b z 5 d f 這樣就在不需陣列公式的情況下解完了~ 檔案中另有陣列公式寫法(節省計算欄位) http://2y.drivehq.com/p/SameGroup.xls ※ 引述《uper (鳳凰城基金會)》之銘言: : 軟體:excel : 版本:office 2007 : 我現在有幾筆資料 : 這些資料在不同的條件下 會被分配到不同的群組 : 然後 我想要知道說 有哪幾筆資料總是會被分到同一個群組 : 我下面舉的例子的答案是 ab 跟 df : 我用過vlookup或match都不能達到這種效果 : 請問還有甚麼方法嗎? : 謝謝大家了.... : 資料如下 : 條件一 條件二 條件三 : group1 group1 group1 : a* f* a* : b* d* b* : c : group2 group2 group2 : d* a* g : e b* e : f* c f* : g e d* : group3 group3 group3 : h g c : i h h : i : group4 : i -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.164.49.183 ※ 編輯: JieJuen 來自: 218.164.49.183 (09/30 19:01) ※ 編輯: JieJuen 來自: 218.164.49.72 (05/11 14:01)
文章代碼(AID): #18uWFI3c (Office)
討論串 (同標題文章)
文章代碼(AID): #18uWFI3c (Office)