excel - 如果列对其他列

时间:2015-03-04 14:50:48

标签: excel excel-vba if-statement vba

我有两个 excel表。如下所示:

表1:

Column 1    Column 2
Date 1      Date 2
Date 1      Date 2
Date 1      Date 2
Date 1      Date 2
Date 1      Date 2
Date 1      Date 2
Date 1      Date 2
Date 1      Date 2
Date 1      Date 2

表2:

Column 1:   
On Time:      xx
Not on Time:  xx 

所以例子。

如果日期1大于日期2,那么它应该在“不准时”行中添加1。如果日期1小于等于日期2,那么它应该在“准时”行中添加1。

请注意,我在同一工作簿中有两张不同的工作表

我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:0)

使用Array Formulas是一种可能性。注意:使用Array Formulas时,您必须按CTRL + SHIFT + ENTER确认它们。

不准时:=SUM(IF((Sheet1!$A$2:$A$26)<=(Sheet1!$B$2:$B$26),1,0))

准时:=SUM(IF((Sheet1!$A$2:$A$26)<=(Sheet1!$B$2:$B$26),1,0))

这样做可以吗?

答案 1 :(得分:0)

一个简单的解决方案是使用虚拟列。让你的表看起来像这样 Sheet 1中

A           B           C
Date 1      Date 2      1
Date 1      Date 2      1
Date 1      Date 2      0
Date 1      Date 2      1
Date 1      Date 2      1
Date 1      Date 2      1
Date 1      Date 2      0
Date 1      Date 2      0
Date 1      Date 2      0

Sheet 2中

A   
On Time:      xx
Not on Time:  xx

如果该行中A <= B,则列C保持为1,否则为0(A> B)。

现在

  • 将您的On Time单元格编辑为="Not on time: " & COUNTIF($C$1:$C$15; 0)
  • 将您的Not on Time单元格编辑为="Not on time: " & COUNTIF($C$1:$C$15; 1)

我测试了它,它应该符合你的喜好。我们希望您能够自由地操纵工作表布局。