在另一个工作表上增加Count +1

时间:2013-08-05 15:17:29

标签: excel-vba formula countif vba excel

我有一个包含2个工作表的电子表格。在第一个工作表中,它是一个任务列表,其中包含一些列,如电话号码,位置等。但是,它有一些向下的行,对应于不同类型的材料[钢,糖,金属等等(和很多)这些也重复)]。这些材料在D栏;总共有1102行。我感兴趣的列在第一列中。在本专栏中,我使用条件格式来验证列中的单元格,并遵循以下规则:如果插入1,则单元格为灰色。如果插入2,则单元格变为黄色。如果插入3,则单元格变为绿色(这是因为列I是一个“状态”列,因为我已经命名它,这将允许我跟踪状态是否完成)。

然后,我们转到我用来跟踪不同指标的第二个工作表。我想要做的是,我在工作表2中有一个C列,这是我所有的“已完成”项目。因此,无论何时在第一个工作表的第一列中插入3(绿色),我希望它在第二个工作表中使用相关材料自动增加计数+1。但是,可能有10个不同的STEEL条目,例如绿色(3)。因此,在第二个工作表中,对于STEEL,它应该列出已完成的10个。

快速前言:

MATERIALS STATUS
STEEL 3 [would be green]
STEEL 3 [would be green]
SUGAR 3 [would be green]

So in worksheet 2:
MATERIALS COMPLETED
STEEL 2 [two here because it found that 2 steel were marked 3/green]
SUGAR 1

我希望这是有道理的。我试图在第二个工作表上做更多的条件格式化来创建我自己的公式来做到这一点,但由于某种原因,我认为它必须用宏完成。任何帮助将非常感激!非常感谢你。

P.S。 我一直试图使用这个INDIRECT公式,我认为这也可以做到。但我无法弄清楚这个公式。我知道逻辑:

如果工作单1中的栏目I包含3,则在工作表2的COLUMN C中增加+1。

但是,我不知道如何将行合并到此中并将计数组合在一起(例如,如果它是10 STEELS)。

1 个答案:

答案 0 :(得分:1)

根据对问题本身的评论,这是一个解决方案。这个特殊的公式做出以下假设:

  • 项目名称(STEEL等)位于第一张纸上的D栏(问题中提到)
  • 项目的计数(= 2,= 3等)位于第一张纸的第I列(也在问题中指定)
  • 第一张名为'Sheet1'
  • 项目名称位于第二张表格的B列
  • 此特定公式放在第二张纸上的单元格C2中

=COUNTIFS(Sheet1!I:I, "=3", Sheet1!D:D, B2)

简要说明它是如何工作的 - 它测试了两个条件:第I列中的“= 3”(根据问题需要),以及Sheet2上与项目名称相匹配的项目名称(通过分组进行分组)项目名称,按要求)。然后可以根据需要使用“自动填充”将此公式复制到尽可能多的行(仍在第二张纸上的C列中)。

相关问题