excel 中的经过条件判断后计算差的问题

来源:百度知道 编辑:UC知道 时间:2024/05/17 16:07:33
有一组数据类似下面

a列 b列
1 5 false
2 6 false
3 4 false
4 3 true
5 7 true
6 9 true
7 10 true
8 12 true

在我的现实应用中数据会很多,上面是简单举例。计算b列连续为false时的各项A列的最大值与最小值的差,当b列连续为true时计算第一个true出现的时候得A值与后面出现的最高值的差,如何实现?

要注意不是判断所有的true 或false的计算,而是当连续出现某个判断的时候得数据计算,当判断再次出现连续之后重新计算。

在H21单元格输入公式:
=IF(G21<>G20,IF(G21="Sell",MAX(OFFSET(C21,0,0,MATCH("Buy",G21:G$1000,0)-1,1))-MIN(OFFSET(C21,0,0,MATCH("Buy",G21:G$1000,0)-1,1)),MAX(OFFSET(C21,0,0,MATCH("Sell",G21:G$1000,0)-1,1))-C21),"")
将公式向下复制。

如果可以的话,你分两步来做这个问题。

1.先用if函数,判定出这个数是 false还是true
2.在第一行或是标题行采用数据-自动筛选,选择 false后,把这部分数据转移到另外一个工作表,再进行你的,“计算b列连续为false时的各项A列的最大值与最小值的差”的问题。
3.同样可以单独操作,当b=true时候的结果。

具体要求是什么?