Excel 公式过于复杂

Excel Formula overly complex

我有一个公式可以使用 If 语句、CONCATENATE 和文本公式构建字符串。 我的问题是公式变得比我想要的要大得多。

我的公式首先查看单元格是否为空白

=IF(I3="","",Else)

第二部分是检查字母"DKB"是否在H格

=IF(ISNUMBER(SEARCH("*DKB*",$H3)),True,False)

第三个是如果持续时间(Cell F)有 0 小时不包括(HH)

=IF(TEXT(F3,"HH")<>"00",CONCATENATE(TEXT(F3,"hh\h\r mm\m\i\n"),CONCATENATE(TEXT(F3,"mm\m\i\n"))

第四个是如果0分钟不包括分钟选择

=IF(TEXT(F3,"MM")<>"00",CONCATENATE(Text(F3,"HH:MM")),CONCATENATE(Text(F3,"HH"))

如果我要写出所有可能的播放方式,我总共会有 10 个 IF。我想要一种简单的方法来编写每个选项,而不必写出每个答案。我有部分代码,但不包括分钟部分。有一个更好的方法吗?你可以看到我只使用 if 语句我不是专家。

这是一张展示我的示例数据和示例输出的图片

如果我们可以为第一部分设置一个变量 ie:10-17 到 9:10 PM

持续时间的第二个变量

DKB 的第 3 个变量

这可能吗

也许您正在寻找这样的东西:

=IF(I3="","",TEXT(A3,"mm-dd-yyyy")&" On-Site "&TEXT(E3,"hh:mm AM/PM")& "- "&TEXT(G3,"hh:mm AM/PM")&" "&TEXT(F3,"hh\h\r mm\m\i\n")&IF(COUNTIF(H3,"*DKB*"),MID(H3,4,20),""))
=IF(I3="","",TEXT(A3,"mm-dd-yyyy")&" On-Site "&TEXT(E3,"hh:mm AM/PM")&"- "&TEXT(G3,"hh:mm AM/PM")&" "&IF(COUNTIF(F3,"*:00:*"),TEXT(F3,"hh\h\r"),IF(COUNTIF(F3,"00:*:*"),TEXT(F3,"mm\m\i\n"),TEXT(F3,"hh\h\r mm\m\i\n"))&IF(COUNTIF(H3,"*DKB*"),MID(H3,4,20),""))))

这将使它不会显示 00hr 或 00min