2016-08-02 46 views
0

我有一个表格,列B中列出了小时数,列D中预期的循环次数。我需要将列表D21中当前小时数的所有内容的预期循环数加在一起。我不能让我的生活得到它的工作。我试过的代码与下面的图片一起帮助了解我正在尝试做什么。Excel sumif与当前小时相匹配

=SUMIF(B8:B20,"<=HOUR(time())", D8:D20) 

enter image description here

所以如果是上午10:00在小区D21的总和应该是像我刚刚=sum(D8:D20)

我做了什么错我的公式,在24,它工作吗?

+1

什么实际格式是B柱之前,将你的小时(()现在)?这只是时间显示的日期/时间吗?在这种情况下,您将时间/日期值与一个整数(从time()中提取的小时数)进行比较,这看起来不正确。 – lurker

+0

@lurker它只是一个没有日期的时间格式 – Vbasic4now

+0

尝试:'“<= TIME(HOUR(NOW()),0,0)”' –

回答

2

对不起,这也许最好作为评论,但我没有这个特权呢。但要获得当前的小时(在Excel 2013即是)你写:

=SUMIF(B8:B20; "<="&HOUR(NOW());D8:D20) 
+1

那么我将如何格式化在我的sumif语句? – Vbasic4now

+0

= SUMIF(B8:B20;“<=”&HOUR(NOW()); D8:D20) –

+0

@David你试过了吗?似乎在Excel 2013中处理我的数字时间/日期值? –

1

大多数LIKEY你的“凌晨一点”是在现实0.0416666666666667,这是一年0天+ 1/24。

您需要通过24比较

+0

不要忘了,您可以逐步评估配方(配方色带)。这将帮助您获得您正在比较的值。 – Squizer

+0

它只是告诉我我的配方有错误,不会运行它,它不像它只是给我错误的值 – Vbasic4now

+0

我将如何将它纳入我的公式? – Vbasic4now