我需要一些excel公式或格式的帮助,可以帮助我解决以下问题:
(Row) |(a) ID | (b)FROM | (c) TO | (d) VALUE
(1) 123 0 1 50
(2) 123 1 2 50
(3) 123 2 3 50
(4) 123 3 4 50
(5) 123 4 5 60
(6) 123 5 6 60
(Row) |(a) ID | (b)FROM | (c) TO | (d) VALUE
(1) 123 0 4 50
(2) 123 4 6 60
因此表1已增加到1(从和到),而表2包含具有值的范围。如果表1中的范围落在表2的范围内,则表1中的递增值应等于表2中的值。
(Row) |(a) ID | (b)FROM | (c) TO | (d) VALUE
(1) 123 0 1 50 TRUE
(2) 123 1 2 50 TRUE
(3) 123 2 3 50 TRUE
(4) 123 3 4 50 TRUE
(5) 123 4 5 60 TRUE
(6) 123 5 6 60 TRUE
基本上ID{ 123'对于从0到4的增量,值为50,对于从4到6的增量,值为60,并且根据表2 0-4 = 50和4-6 = 60,因此该语句应为TRUE。
=IF(AND(A1=table2!a:a, table1!B1>=table2!b:b,table1!a1<table!B:B),IF(table1!d2=table2!d:d, TRUE,FALSE))
可能是excel处理范围等的方式?
答案 0 :(得分:1)
在table1上,单元格E2,使用此公式并向下复制:
=D2=VLOOKUP(B2,INDEX(table2!B:B,MATCH(A2,table2!A:A,0)):INDEX(table2!D:D,MATCH(A2,table2!A:A,0)+COUNTIF(table2!A:A,A2)-1),3)
答案 1 :(得分:1)
我喜欢来自@tigeravatar的答案(归功于他/她),但如果你没有订购清单,我已经在下面创建了一些不需要的东西。如果表2没有按ID号排序,您可以在单元格E2中使用此公式并复制下来:
=IFERROR(IF(B2>=INDEX(table2!$A:$D,MATCH(D2,table2!$D:$D,0),2),IF(C2<=INDEX(table2!$A:$D,MATCH(D2,table2!$D:$D,0),3),IF(A2=INDEX(table2!$A:$D,MATCH(D2,table2!$D:$D,0),1),TRUE,FALSE))),FALSE)
这基本上是相同的,但带有AND语句
=IFERROR(IF(AND(A2=INDEX(table2!$A:$D,MATCH(D2,table2!$D:$D,0),1),B2>=INDEX(table2!$A:$D,MATCH(D2,table2!$D:$D,0),2),C2<=INDEX(table2!$A:$D,MATCH(D2,table2!$D:$D,0),3)),TRUE,FALSE),FALSE)