excel函数多条件统计。我想统计左边数据,每行同时满足两个条件的行数。求大神指导。
比如1、在H6单元格里显示,统计出左边数据中,同时满足两个条件的行数:条件一数据6中的(1和2)同时出现在某一行;条件二数据7中的(89101173)有三个数也在这一行出...
比如1、在H6单元格里显示,统计出左边数据中,同时满足两个条件的行数:条件一 数据6中的(1和2)同时出现在某一行;条件二 数据7中的(8 9 10 11 7 3)有三个数也在这一行出现.比如2、在H7单元格里显示,统计出左边数据中,同时满足两个条件的行数:条件一 数据6中的(1和4)同时出现在某一行;条件二 数据7中的(6 3 10 2 7 5)有三个数也在这一行出现.
展开
展开全部
使用vba实现的,实现结果如下图,运行前,清空h列的数字,然后点击按钮运行,
完全是一键搞定
Sub 按钮2_Click()
Application.ScreenUpdating = False
arr = [b5].CurrentRegion
brr = [h5].CurrentRegion
For j = 2 To UBound(brr)
For i = 2 To UBound(arr)
a = 0
b = 0
c = 0
For k = 1 To 5
If arr(i, k) = brr(j, 2) Then
a = 1
Else
If arr(i, k) = brr(j, 3) Then b = 1
End If
If a + b = 2 Then
c = 1
Exit For
End If
Next k
If c = 1 Then
a = 0
For k = 1 To 5
For l = 4 To 9
If arr(i, k) = brr(j, l) Then
a = a + 1
Exit For
End If
Next l
If a = 3 Then
brr(j, 1) = brr(j, 1) + 1
Exit For
End If
Next k
End If
Next i
Next j
[h5].CurrentRegion = brr
Application.ScreenUpdating = True
End Sub
按alt+f11打开vbe,插入模块输入代码即可
不能上传文件了
追答
请结单
展开全部
用自定义函数吧
在H6打入公式=ctr(B$6:F$18,I6:J6,K6:P6)
在向下填充即可
三个数据区域的行列数和位置都可变
条件也可改:代码倒数第二行的u、v条件
想增加条件区域,加代码即可
.
自定义代码如下
Function Ctr(a As Range, b As Range, c As Range) As Integer
n = 0
For i = 1 To a.Rows.Count
s = "": For j = 1 To a.Columns.Count: s = s & " " & a(i, j): Next
u = 0: For j = 1 To b.Columns.Count: u = u - (InStr(s, " " & b(1, j)) > 0): Next
v = 0: For j = 1 To c.Columns.Count: v = v - (InStr(s, " " & c(1, j)) > 0): Next
If u = 2 And v > 2 Then n = n + 1
Next
Ctr = n
End Function
在H6打入公式=ctr(B$6:F$18,I6:J6,K6:P6)
在向下填充即可
三个数据区域的行列数和位置都可变
条件也可改:代码倒数第二行的u、v条件
想增加条件区域,加代码即可
.
自定义代码如下
Function Ctr(a As Range, b As Range, c As Range) As Integer
n = 0
For i = 1 To a.Rows.Count
s = "": For j = 1 To a.Columns.Count: s = s & " " & a(i, j): Next
u = 0: For j = 1 To b.Columns.Count: u = u - (InStr(s, " " & b(1, j)) > 0): Next
v = 0: For j = 1 To c.Columns.Count: v = v - (InStr(s, " " & c(1, j)) > 0): Next
If u = 2 And v > 2 Then n = n + 1
Next
Ctr = n
End Function
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在H6单元格里显示,统计出左边数据中,同时满足两个条件的行数:条件一 数据6中的(1和2)同时出现在某一行,的行数有多少行?
=SUMPRODUCT((I6:I100=1)*(J6:J100=2))
其他类推
=SUMPRODUCT((I6:I100=1)*(J6:J100=2))
其他类推
追问
左边区域有300多行
,右边的区域有5000行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
QZ是要在H列写公式是吧?假设符合条件1的数据有5行,符合条件2的数据有4行,其中有3行是也符合条件1的要求的,那么H列结果应该是几?
追问
你的运行结果是对的。
按alt+f11打开vbe,插入模块输入代码即可,之后的不会弄了。。。发给吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询