百科知识网

excelhome之家

发布时间:2025-10-11 | 来源:互联网转载和整理

1、这个公式的意思如下:1,首先判断D97是否为空" ",如果为空" ",则返回空值" "2,D97不为空,则进行计算D97-IF(D97<600,LOOKUP(2,1/((D$2:D96>0)*(D$2:D96<600)),D$2:D96),LOOKUP(2,1/((D$2:D96>600)*(D$2:D96<999)),D$2:D96))这里面主要是要了解LOOKUP(2,1/((D$2:D96>0)*(D$2:D96<600))的意思,((D$2:D96>0)*(D$2:D96<600)这个语句用在lookup中会产生一个序列,对D2到D96的数据进行一个一个的判断,D2是否大于0,大于0则返回ture,ture对应的数字为1,反之则返回false,false对应的是0,同时是否小于600,同理小于600返回1。

2、反之返回0,然后把两个判断的返回值相乘作为序列的第一个数,这样只会有两个结果,1或者0,对D2到D96判断完后,产生的序列就是类似{1,1,1,0,0,1,0.}这样的结构,然后再作为除数被1除,产生序列{1,1,1,#DIV/0!#DIV/0!1.},然后我们把函数写清除一点就是lookup(2,{1,1,1,#DIV/0!#DIV/0!1.},D2:D96) lookup在序列中找2,然后返回D2到D96对应的值,你可以看到lookup是不可能找到2的,所以他只能返回序列中最后一个1(如果lookup找不到相等的值则使用数组中小于或等于2的最大数值),即提取出D2到D96中最后一个大于0小于600的数.同理LOOKUP(2,1/((D$2:D96>600)*(D$2:D96<999)),D$2:D96))),则可以提取D2到D96中最后一个大于600小于999的值.所以,这个公式最后的意思就是:如果D97为空,则填充空值,否则如果D97小于600,则用D97的值减去D2到D96中最后一个大于0小于600的值,并且把差放在当前单元格,如果D97大于等于600,则用D97的值减去D2到D96中最后一个大于600小于999的值,并且把差放在当前单元格.天,码字好辛苦!不过只要你能看明白就满足了.

excelhome

上一篇:游玩哈尔滨(精编8篇)

下一篇:紫涵繁体字怎么写

其他文章

  • 如何举报高考违规
  • 很污的言情小说大全(言情小说大全污的片段)
  • 莲蓬乳和空心手指(蓬莲乳和空无指)
  • 天娱传媒旗下有哪些艺人
  • 终极一家为什么不能看了
  • 绵阳中学2023高三复读班招生简章
  • 暴殄天物和暴殄天物的区别
  • 自招线什么意思
  • 手机白名单怎么设置
  • 美国国庆放假几天
  • 附近有那些家政公司
  • 《满江红》全文诗词
  • 俩俩仨仨是成语吗
  • 果宝特攻中的人物名字都有谁
  • 东莞哪里有小龙虾批发
  • 袁氏家谱排辈
  • 年立水素杯真的有用吗
  • 汽车保养app排名推荐
  • 桥架人工费多少钱一米
  • 晚霞的寓意和象征