创建宏以从 sheet 计数并将计数填充到 table
Create macro to count from a sheet and fill the count in a table
初始信息
我有 sheet1,它有多个列的数据,我也命名了数据范围。
我的第二个 sheet 有一个仪表板,我需要在其中根据值进行计数。
我已经试过了
- Countif -> 给了#VALUE!错误
- Countifs -> 给了#VALUE!错误
- sumif -> 给了#VALUE!错误
- sum(if(component="Abc",1,0)) - > Worked, 但由于它是一个数组公式,我必须按 CTRL+SHIFT+输入
最后一个公式的问题是,每次 sheet1 中的数据发生变化时,我都必须转到 sheet2 并在每个单元格上按 CTRL+SHIFT+ENTER。
我需要一个可以完成这项工作的宏的帮助。
使用COUNTIFS
(RANGE OF
记录中的状态,当前单元格有状态,RANGE OF COMPONENT
记录中,当前单元格有组件)
例如:
COUNTIFS(B22:B28,A33,C22:C28,B32)
Sno Status Component
1 WIP Abc
2 WIP Abc
3 WIP Mnp
4 WC Mnp
5 WC Mnp
6 RU Abc
7 RU Mnp
Count Abc Mnp
WIP =COUNTIFS(B22:B28,A33,C22:C28,B32) =COUNTIFS(B22:B28,A33,C22:C28,C32)
WC =COUNTIFS(B22:B28,A34,C22:C28,B32) =COUNTIFS(B22:B28,A34,C22:C28,C32)
RU =COUNTIFS(B22:B28,A35,C22:C28,B32) =COUNTIFS(B22:B28,A35,C22:C28,C32)
试试这个方法。 COUNTIF 将起作用。
如果 Sno
在 A1 中,Count
在 G4 中,则在 H6 中复制到 I8:
=COUNTIFS($B:$B,$G6,$C:$C,H)
或添加适当的 sheet 引用,例如:
=COUNTIFS(sheet1!$B:$B,$G6,sheet1!$C:$C,H)
这可以放在与数据不同的 sheet 上,两个公式都应该有效。
如果不是,那么可能您的 Excel 版本没有 COUNTIFS,或者您的列表定界符不是 ,
或者其他既不是函数也不是公式的错误。
Sno 状态组件
1 WIP Abc
2 WIP Abc
3 在制品 Mnp
4 WC MNP
5 WC MNP
6 俄语
7 RU Mnp
一个sheet从A1单元格开始
在下一个 sheet 来自 A1 单元格
计数 Abc Mnp
WIP =COUNTIFS(Sheet2!B2:B8,Sheet3!A2,Sheet2!C2:C8,Sheet3!B1) =COUNTIFS(Sheet2!B2:B8,Sheet3!A2,Sheet2!C2:C8,Sheet3!C1)
WC =COUNTIFS(Sheet2!B2:B8,Sheet3!A3,Sheet2!C2:C8,Sheet3!B1) =COUNTIFS(Sheet2!B2:B8,Sheet3!A3,Sheet2!C2:C8,Sheet3! C1)
RU =COUNTIFS(Sheet2!B2:B8,Sheet3!A4,Sheet2!C2:C8,Sheet3!B1) =COUNTIFS(Sheet2!B2:B8,Sheet3!A4,Sheet2!C2:C8,Sheet3! C1)
初始信息
我有 sheet1,它有多个列的数据,我也命名了数据范围。
我的第二个 sheet 有一个仪表板,我需要在其中根据值进行计数。
我已经试过了
- Countif -> 给了#VALUE!错误
- Countifs -> 给了#VALUE!错误
- sumif -> 给了#VALUE!错误
- sum(if(component="Abc",1,0)) - > Worked, 但由于它是一个数组公式,我必须按 CTRL+SHIFT+输入
最后一个公式的问题是,每次 sheet1 中的数据发生变化时,我都必须转到 sheet2 并在每个单元格上按 CTRL+SHIFT+ENTER。 我需要一个可以完成这项工作的宏的帮助。
使用COUNTIFS
(RANGE OF
记录中的状态,当前单元格有状态,RANGE OF COMPONENT
记录中,当前单元格有组件)
例如:
COUNTIFS(B22:B28,A33,C22:C28,B32)
Sno Status Component
1 WIP Abc
2 WIP Abc
3 WIP Mnp
4 WC Mnp
5 WC Mnp
6 RU Abc
7 RU Mnp
Count Abc Mnp
WIP =COUNTIFS(B22:B28,A33,C22:C28,B32) =COUNTIFS(B22:B28,A33,C22:C28,C32)
WC =COUNTIFS(B22:B28,A34,C22:C28,B32) =COUNTIFS(B22:B28,A34,C22:C28,C32)
RU =COUNTIFS(B22:B28,A35,C22:C28,B32) =COUNTIFS(B22:B28,A35,C22:C28,C32)
试试这个方法。 COUNTIF 将起作用。
如果 Sno
在 A1 中,Count
在 G4 中,则在 H6 中复制到 I8:
=COUNTIFS($B:$B,$G6,$C:$C,H)
或添加适当的 sheet 引用,例如:
=COUNTIFS(sheet1!$B:$B,$G6,sheet1!$C:$C,H)
这可以放在与数据不同的 sheet 上,两个公式都应该有效。
如果不是,那么可能您的 Excel 版本没有 COUNTIFS,或者您的列表定界符不是 ,
或者其他既不是函数也不是公式的错误。
Sno 状态组件 1 WIP Abc 2 WIP Abc 3 在制品 Mnp 4 WC MNP 5 WC MNP 6 俄语 7 RU Mnp
一个sheet从A1单元格开始
在下一个 sheet 来自 A1 单元格
计数 Abc Mnp WIP =COUNTIFS(Sheet2!B2:B8,Sheet3!A2,Sheet2!C2:C8,Sheet3!B1) =COUNTIFS(Sheet2!B2:B8,Sheet3!A2,Sheet2!C2:C8,Sheet3!C1)
WC =COUNTIFS(Sheet2!B2:B8,Sheet3!A3,Sheet2!C2:C8,Sheet3!B1) =COUNTIFS(Sheet2!B2:B8,Sheet3!A3,Sheet2!C2:C8,Sheet3! C1)
RU =COUNTIFS(Sheet2!B2:B8,Sheet3!A4,Sheet2!C2:C8,Sheet3!B1) =COUNTIFS(Sheet2!B2:B8,Sheet3!A4,Sheet2!C2:C8,Sheet3! C1)