【问题标题】:Trouble with looking up min value between different conditions在不同条件之间查找最小值的麻烦
【发布时间】:2019-07-01 11:57:30
【问题描述】:

我正在尝试在两个不同时间之间找到固定日期的最短时间。 一直在尝试不同的变化,但没有任何效果。

这是在 excel 2016 上,我昨天在不同的电子表格(我创建的测试表)上尝试了类似的代码,它工作正常。不幸的是,它在我无法再访问的另一台笔记本电脑上。

在我要使用的工作表上尝试了相同的代码,但它不起作用。

{=MIN(IF((Date<=D5)*(Date>=D4);Time;"");IF((Time<=D7)*(Time>=D6);Time<""))}
{=MIN(IF(;IF((Time<=D7)*(Time>=D6);Time<""))}

D5 是我想要查看的实际日期(第 1 行),因为它对我不起作用我尝试在 D4 中放置更早的日期但结果相同(第 2 行)。 D7 和 D6 是我要查找的结束时间和开始时间之间的值。 尝试命名范围,因此日期范围是指日期(E2:E55220),而时间是我想在(C2:C55220)中找到最小值的时间范围。

我在所有尝试中最终得到的值都是 0

【问题讨论】:

  • 据我所知,你想要:=MIN(IF((Date&lt;=D5)*(Date&gt;=D4)*(Time&lt;=D7)*(Time&gt;=D6);Time;""))
  • 谢谢,这个公式更有意义,但我仍然遇到同样的问题。日期和时间单元格指的是不同的工作表,这可能会导致问题吗?我还看到它所引用的发送给我的数据在时间('08:45)中有',但我认为如果不手动删除它就无法删除。
  • 这意味着时间是文本,而不是真正的日期/时间值。您可以使用 Text to Columns 修复它们,方法是选择单元格,然后选择 Data 选项卡,Text To Columns,选择 Delimited,然后单击 Next,然后单击 Finish。
  • 啊,当然,非常感谢。最后一个问题...公式返回 07:45,虽然我知道值是 06:45。无论我尝试哪个日期,它实际上都会返回 07:45:P
  • 计算设置为手动?

标签: excel excel-formula max min excel-2016


【解决方案1】:

数组的替代公式。它应该做同样的事情:

=AGGREGATE(15,6,myTIME/((myDATE<=F4)*(myDATE>=F3)*(myTIME<=F6)*(myTIME>=F5)),1)

现在这个公式适用于假设您的日期是实际的 Excel 日期而不是看起来像日期的文本。时间也是如此。您可以使用以下公式对其进行测试:

ISNUMBER(E2)

or

ISTEXT(E2)

其中 E2 是包含日期或时间的单元格。 Excel 将日期存储为整数,将时间存储为小数。如果您的信息存储为文本,则首先转换它们然后尝试应用您的公式来转换转换结果可能更容易。您可以使用公式进行转换,但它会使公式变得非常丑陋和冗长。

【讨论】:

  • 好吧,我还是 07:45 >。
  • 最好的办法是在您的问题中提供一些示例数据。不是完整的范围,只是 5 行左右的信息的 sn-p,以及您对该数据的预期结果。我们不能在没有看到您正在使用的内容的情况下说出您为什么会得到 07:45。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-03-28
  • 2012-05-27
  • 1970-01-01
  • 2015-10-27
  • 2013-11-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多