ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何用VBA进行多条件下的数量统计?

如何用VBA进行多条件下的数量统计?

作者:绿色风 分类: 时间:2022-08-17 浏览:94
楼主
herelazy
Q:如何用VBA进行多条件下的数量统计?
具体条件如图所示:

 

A:
  1. Sub justtest()
  2.     Dim Ar, Arr, i&, d, s$, Arrt() As String
  3.     Set d = CreateObject("scripting.dictionary")
  4.     '获取编码
  5.     Ar = Range("h2:k" & Cells(Rows.Count, "h").End(3).Row).Value
  6.     For i = 1 To UBound(Ar, 1)
  7.         s = Ar(i, 1) & Ar(i, 2)
  8.         d(s) = Array(i, 0)
  9.     Next i
  10.     '进行数据源获取,并判断返回编码
  11.     Arr = Range("b2:d" & Cells(Rows.Count, 1).End(3).Row).Value
  12.     ReDim Arrt(1 To UBound(Arr, 1), 1 To 1)
  13.     For i = 1 To UBound(Arr, 1)
  14.         s = Arr(i, 1) & Arr(i, 2)
  15.         If d.exists(s) Then
  16.             d(s) = Array(d(s)(0), d(s)(1) + Arr(i, 3))
  17.             If d(s)(1) <= 10000 Or Ar(d(s)(0), 4) = "" Then
  18.                 Arrt(i, 1) = Ar(d(s)(0), 3)
  19.             Else
  20.                 Arrt(i, 1) = Ar(d(s)(0), 4)
  21.             End If
  22.         End If
  23.     Next i
  24.     Range("e2:e" & Rows.Count).ClearContents
  25.     Range("e2").Resize(UBound(Arrt, 1), 1) = Arrt
  26.     Set d = Nothing
  27. End Sub



多条件统计.rar
2楼
xmyjk
谢谢小白分享。
3楼
kangguowei
学习.

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap