Excel 矩阵条件 - 有没有更快捷的方法?

Excel 矩阵条件 - 有没有更快捷的方法?

我想根据多个条目获取一些数据。

我正在使用“NB.SI.ENS()”“COUNTIFS()”如果我没记错的话,是用英语写的。

我有多个条目,它们代表一个 3D 数组,因为我使用了 3 个源。这些源是活动, A项目,以及日期

对于每一个,我需要计算三元组(活动项目日期)。图片中我的例子显示3为数量测试项目 110月。

这是代表

有两个来源,COUNTIFS()函数工作正常。我可以用尽可能多的COUNTIFS()因为两个源的行和列之间存在交集(例如,活动, 和项目

由于有 3 个条目,我需要创建与第三个数组中的数据一样多的二维数组。

我选择了日期作为第三个数组,所以我有 12 个二维数组。

当我获取超过 200 行的数据时,这会耗费 Excel 大量的计算时间。

有没有更好的方法呢?

答案1

我有一个非常肮脏的解决方案,但我已经尝试过并且可以立即获得 600 行数据的结果

我已经为你截取了我的设置的屏幕截图(https://image.ibb.co/kqxvYR/tmp.png

基本上,我使用符号将三个文本连接在一起,并且只对该列执行了 COUNTIF

一步步:

  1. 连接 3 个文本
    1. 使用此命令[=CONCAT($A2," | ",$B2, " | ",$C2)] 对于 D2(每行增加 1 个数字)
    2. 例如:A2 =测试, B2 =项目 1,C2 =2017 年 1 月 10 日
    3. 现在我得到:测试 | 项目 1 | 2017 年 1 月 10 日
  2. 当你需要搜索时:将想要的 3 个项目粘贴到单独的位置

    1. 例如:F10 =建模,G10 =项目 2I10=2017 年 1 月 10 日
    2. 再次使用 1.1 命令 [=CONCAT($F10," | ",$G10, " | ",$I10)] 按下 F12
    3. 现在 F12 看起来像这样建模 | 项目 2 | 2017 年 1 月 10 日
    4. 您可以使用这个更简单的 COUNTIF 命令获取结果:=COUNTIF(D2:D14,F12)
  3. 现在你可能会认为,进行这个丑陋的测试建模 | 项目 2 | 2017 年 1 月 10 日是不可接受的

    1. 您可以使用 Excel 格式化魔法来隐藏它
    2. 拖拽所有 D 列丑陋的文本
    3. 右击 > 设置单元格格式
    4. 然后“数字”选项卡 >“自定义”
    5. 输入;;;在文本框中
    6. 然后丑陋的文字对用户来说就不再可见了

希望这对你有帮助!

答案2

在分析了您的屏幕截图和查询之后,我创建了一个解决方案,它计算了不同日期的所有三个活动。检查此屏幕截图。

在此处输入图片描述

数据范围是 A434:D459

B449 首个配方

=COUNTIFS($A$434:$A$446,"="&$A449,$B$434:$B$446,"="&$A$448,$C$434:$C$446,"="&B$448)

B453 中的第二种配方

=COUNTIFS($A$434:$A$446,"="&$A453,$B$434:$B$446,"="&$A$452,$C$434:$C$446,"="&B$452)

B457 中的第三种公式

=COUNTIFS($A$434:$A$446,"="&$A457,$B$434:$B$446,"="&$A$456,$C$434:$C$446,"="&B$456)

将所有公式向右拖 2 列,然后向下拖 2 行。

根据需要调整数据范围

希望对你有帮助,我发布的内容已经经过我测试过了。

相关内容