|
本帖最后由 zxf2287 于 2018-10-17 16:10 编辑
表格如附件所示,想取得进口产品或者国产产品每月的不重复产品数量,由于是新手,很多IF,请教高手如何简化,谢谢。商品 | 产地 | 生产日期 | 质检报告 | 出进口 | A-1 | 瑞典 | 8 | 合格 | 进口 | A-1 | 中国 | 8 | 合格 | 国产 | A-2 | 阿根廷 | 9 | 合格 | 进口 | A-4 | 中国 | 7 | 不合格 | 国产 | A-1 | 中国 | 8 | 不合格 | 国产 | A-6 | 曼谷 | 8 | 不合格 | 进口 | A-2 | 悉尼 | 7 | 合格 | 进口 | A-4 | 洛杉矶 | 7 | 不合格 | 进口 | A-1 | 爱情海 | 9 | 合格 | 进口 | A-2 | 爱情海 | 9 | 合格 | 国产 | A-3 | 爱情海 | 9 | 合格 | 国产 |
汇总表:
Sub 按钮2_Click()
Set d1 = CreateObject("scripting.dictionary")
Set d2 = CreateObject("scripting.dictionary")
Set d3 = CreateObject("scripting.dictionary")
Set d4 = CreateObject("scripting.dictionary")
Set d5 = CreateObject("scripting.dictionary")
Set d6 = CreateObject("scripting.dictionary")
Application.ScreenUpdating = False
arr = Sheets("表").[a1].CurrentRegion
For j = 2 To UBound(arr)
If arr(j, 5) = "进口" And arr(j, 3) = "7" Then
d1(arr(j, 1)) = ""
Else
If arr(j, 5) = "进口" And arr(j, 3) = "8" Then
d2(arr(j, 1)) = ""
Else
If arr(j, 5) = "进口" And arr(j, 3) = "9" Then
d3(arr(j, 1)) = ""
Else
If arr(j, 5) = "国产" And arr(j, 3) = "7" Then
d4(arr(j, 1)) = ""
Else
If arr(j, 5) = "国产" And arr(j, 3) = "8" Then
d5(arr(j, 1)) = ""
Else
If arr(j, 5) = "国产" And arr(j, 3) = "9" Then
d6(arr(j, 1)) = ""
End If
End If
End If
End If
End If
End If
Next j
Sheets("汇总").Range("c2") = d1.Count
Sheets("汇总").Range("d2") = d2.Count
Sheets("汇总").Range("e2") = d3.Count
Sheets("汇总").Range("c3") = d4.Count
Sheets("汇总").Range("d3") = d5.Count
Sheets("汇总").Range("e3") = d6.Count
Application.ScreenUpdating = True
End Sub
|
|