首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在单元格中找到大于特定值的最近数。

在单元格中找到大于特定值的最近数。
EN

Stack Overflow用户
提问于 2016-05-12 04:47:26
回答 1查看 167关注 0票数 0

我的Excel表中有三个不同的单元格:

代码语言:javascript
复制
[B1] = 2
[N50] = 5
[V25] = 10

我想在这些单元格中找到比一个特定值更接近的数字。例如,如果值为1,那么单元格[B1]中的数字应该是2。如果值为4,则单元格[N50]中的数字应该是5

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-12 06:05:25

代码语言:javascript
复制
=IF(A2<LARGE(CHOOSE({1,2,3},D2,F3,H1),1),
  IF(A2<LARGE(CHOOSE({1,2,3},D2,F3,H1),2),
  IF(A2<LARGE(CHOOSE({1,2,3},D2,F3,H1),3),
LARGE(CHOOSE({1,2,3},D2,F3,H1),3),
LARGE(CHOOSE({1,2,3},D2,F3,H1),2)),
LARGE(CHOOSE({1,2,3},D2,F3,H1),1)),
"larger or equal to all searched numbers")

在一条很好的直线上复制和粘贴:

代码语言:javascript
复制
=IF(A2<LARGE(CHOOSE({1,2,3},D2,F3,H1),1),  IF(A2<LARGE(CHOOSE({1,2,3},D2,F3,H1),2),  IF(A2<LARGE(CHOOSE({1,2,3},D2,F3,H1),3), LARGE(CHOOSE({1,2,3},D2,F3,H1),3), LARGE(CHOOSE({1,2,3},D2,F3,H1),2)), LARGE(CHOOSE({1,2,3},D2,F3,H1),1)), "larger or equal to all searched numbers")

对我来说最困难的部分--我不理解它--并且仍然接受not...just,就是将您的独立单元格构建成一个数组。该部分由()完成:

代码语言:javascript
复制
CHOOSE({1,2,3},D2,F3,H1)

一旦它在一个数组中,执行一个大的函数来排序它从最大到最小。然后通过一系列嵌套的IF语句,检查A2中指定的数字是否小于K的最大数。

这里是一个概念的证明缩小到更小的范围,但给你的想法。

现在我用一个很大的,你也可以用一个小的函数,你只需要改变你的逻辑在if语句。

这是一种没有if语句的替代方法:

代码语言:javascript
复制
=IF(A2>=MAX(A7,C8,E6),"Greater than or equal to all options",INDEX(CHOOSE({1,2,3},A7,C8,E6),IFERROR(MATCH(A2,CHOOSE({1,2,3},A7,C8,E6),1)+1,1)))
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37177489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档