Board logo

標題: [發問] 重複欄位刪除+第2欄判斷 [打印本頁]

作者: dabus    時間: 2016-5-28 10:02     標題: 重複欄位刪除+第2欄判斷

大家好
小弟是工廠生產管理人員,由工作需要整裡大量數據, 所以要請教大家VBA能否做到以下功能
目前是採用手動標示重複顏色後再由人工判斷B欄字串或數字再刪除重複的一整列,由於這樣
方式遇到大量資料很耗時也容易出錯,所以來請教各大高手是否能用VBA做到以下幾點要求

1.找到的A欄重複數字後判斷B欄如果重複的2個欄位都是一樣(PASS 或 FAIL)則只需留下一列(刪除)
2.找到的A欄重複數字後判斷B欄如果B欄2個欄位字串不同(PASS 或 FAIL)則只需留下PASS那一列

未完成
[attach]24360[/attach]
完成
[attach]24362[/attach]
附件
[attach]24361[/attach]
作者: hcm19522    時間: 2016-5-28 17:02

本帖最後由 hcm19522 於 2016-5-28 17:11 編輯

J2=IF(COUNTIF(A$2:A2,A2)=1,ROW(),"")
K2=IFERROR(INDEX(A:A,SMALL(J$2:J$999,ROW(A1))),"")
L2{=IF(K2="","",IF(ISNA(MATCH("PASS",IF(A$2:A$999=K2,B$2:B$999),)),"FAIL","PASS"))
作者: hcm19522    時間: 2016-5-28 17:54

http://blog.xuite.net/hcm19522/twblog/417116186

E2:E16=IF(COUNTIF(B$2:B2,B2)=1,ROW(),"")
F2:F16=IFERROR(INDEX(B:B,SMALL(E$2:E$16,ROW(A1))),"")
G2:G16{=IF(F2="","",IF(ISNA(MATCH("PASS",IF(B$2:B$16=F2,C$2:C$16),)),"FAIL","PASS"))
(無輔助)I2:I16{=INDEX(B:B,MIN(IF((COUNTIF(I$1:I1,B$2:B$999)=0)*(B$2:B$999<>""),ROW(B$2:B$999),4^8)))&""
J2:J16{=IF(I2="","",IF(ISNA(MATCH("PASS",IF(B$2:B$16=I2,C$2:C$16),)),"FAIL","PASS"))
K2:K16=IF(I2="","",INDEX(C:C,MATCH(I2&J2,A$2:A$999&B$2:B$999,)+1))
作者: dabus    時間: 2016-5-29 13:50

回復 3# hcm19522


   抱歉看不太懂,請問這試自己帶公式嗎?
作者: hcm19522    時間: 2016-5-29 16:17

回復 4# dabus
作者: ML089    時間: 2016-5-29 21:53

回復 1# dabus

A欄有排序,B欄 PASS都在第一列時
J2 =IF(A2=A1,"DEL","")
下拉

自動篩選 J欄 - DLE,選取刪除




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)