Excel将Now Now()转换为数字以与另一个数字进行比较

时间:2014-09-14 18:37:59

标签: excel excel-formula excel-2007 excel-2010

我试图在没有任何宏的电子表格中使用某些逻辑。

首先,我有一个提供日期和时间的单元格。然后我在该单元格上使用自定义格式来显示“h”。因此,此单元格中仅显示小时编号1到24。 (例如,下午3点20分,我在牢房中得到15分)。 (单元格#A:1)

=now()

其次,我有一个单独的列,其中24行编号为1-24(Cell#的B1:B24)

我有第三列有逻辑,表示“夜间”换档“数字23和0-6;”日班次“表示数字7-14;”中间班次“表示数字15-22)(单元格#的C1:C24)

=if($A$1=B1,"Night Shift","")

但是,第三列都显示为空白,即使出现严重的列也是如此。我尝试使用文本(A1,“#”)更改A1,但我得到了序列号。是否有一种简单的方法可以在C列中动态显示一个值,显示基于单元格A1中一天中小时的移位。 D列简单地连接所有24个单元格,因为只有一个数字。 (Cell#D1)。谢谢你的帮助。

3 个答案:

答案 0 :(得分:2)

您可以使用LOOKUP公式根据A1中的时间/日期值返回班次,例如

=LOOKUP(HOUR(A1),{0,7,15,23;"Night","Day","Mid","Night"})&" Shift"

答案 1 :(得分:1)

更改包含日期和时间的单元格的格式对单元格的实际内容没有任何影响。它仍然包含一个值,如43706.75(自19/1年1月1日以来的天数和分数)。

如果你想要做的是确定A1中日期/时间的转变,你可以使用如下公式:

=IF(AND(HOUR(A1)>=7,HOUR(A1)<15),"Day Shift",IF(AND(HOUR(A1)>=15,HOUR(A1)<23),"Mid Shift","Night Shift"))

如果您需要为薪水应用不同的乘数,那么类似的逻辑。

如果您需要其他内容,请更具体。

答案 2 :(得分:0)

通过执行=now()而不进行任何格式化,您可以获得日期和时间。然后在单元格A2中

=(A1-INT(A1))*24

然后在单元格A3中

=INT(A2)

这为您提供了从日期格式中提取的小时数,因此可以在C列中与B列中的数字进行比较。谢谢。