对于某些人来说,这可能很容易理解,但我很难找到解决方案。我有以下公式:
IF(
AND(TODAY()<=E34;ISBLANK(I34));"Not started";IF(
AND(TODAY()>E34;ISBLANK(I34));"Start delayed";IF(
AND(TODAY()>I34;TODAY()<=F34;ISBLANK(J34));"In progress";IF(
AND(TODAY()>F34;ISBLANK(J34));"Completion delayed";IF(
AND(TODAY()>J34);"Done";"ERROR")
))))
根据返回“未开始”,“开始延迟”,“进行中”,“完成延迟”,“完成”或“错误”的值,比较单元格E34-F34和I34-J34中的日期。< / p>
E34的日期为“ 01.06.2018”-F34的日期为“ 31.07.2018”,而I34的日期为“ 01.06.2018”,而J34的日期为“ 31.07.2018”。公式返回“错误”,尽管它应该返回“完成”。
如果F34和J34的值为30.07.2018而不是31.07.2018,则公式将返回“完成”。 (它也应该在2018年7月31日返回相同的“完成”值)
答案 0 :(得分:0)
我对真正的期望条件尚不清楚。如果有实际的文字而不是我使用的日期:
Sub GetADUsers()
Groupdn = "CN=X,OU=X,OU=X,DC=X,DC=X"
Set group = GetObject("LDAP://" & Groupdn)
'On Error Resume Next
Dim Test As String
Dim Test2 As String
Dim i As Integer
Dim y As Integer
i = 1
y = 1
Sheets("Tabelle1").UsedRange.Clear
For Each MemberDN In group.member
segments = MemberDN
segments = Mid(segments, 3)
segments = Replace(segments, "=", "")
segments = Replace(segments, "\", "")
segments = Replace(segments, "X", "")
segments = Replace(segments, "X", "")
segments = Replace(segments, "X", "") ' Im removing some "privat" things here
segments = Replace(segments, "Y", "")
segments = Replace(segments, "X", "")
segments = Replace(segments, ",,", "")
segments = Split(segments, ",")
Test = segments(0)
Test2 = segments(1)
zahl1 = "A" & i
zahl2 = "B" & y
Range(zahl1) = Test
i = i + 1
Range(zahl2) = Test2
y = y + 1
Next
End Sub
=IF(TODAY()>1*SUBSTITUTE(J34;".";"/");"Done";IF(
AND(TODAY()<=1*SUBSTITUTE(E34;".";"/");ISBLANK(I34));"Not started";IF(
AND(TODAY()>1*SUBSTITUTE(E34;".";"/");ISBLANK(I34));"Start delayed";IF(
AND(TODAY()>1*SUBSTITUTE(I34;".";"/");TODAY()<=1*SUBSTITUTE(F34;".";"/");ISBLANK(J34));"In progress";IF(
AND(TODAY()>1*SUBSTITUTE(F34;".";"/");ISBLANK(J34));"Completion delayed";"ERROR")
))))
不需要AND(TODAY()>J34);"Done";"ERROR")
,仅当日期大于J34时,评估结果为“完成”。我会将其移到最前面,并进行第一个条件测试。 2018年3月31日不是> AND
。今天是31/07/2018因此相等。
如果您的日期是实际日期,则不需要SUBSTITUTE部分。您可以使用ISNUMBER函数检查实际日期,例如如果单元格包含的日期不是文本字符串,则TODAY()
将返回True。
没有替代
ISNUMBER(E34)
如果仍然存在问题,我建议说明每个预期的测试条件,并给出一些输入日期和预期的输出。
您给出的有关Error的示例已正确评估。