excel - 存在值时,Excel VLOOKUP 返回 #N/A
问题描述
我正在为学校体育赛事创建一个电子表格,根据时间/距离/高度/等来奖励积分。由每个学生完成。参考数据表表示每个事件的可用点,但不包括每个值——即点与一系列值相关。例如:在 1.00m 和 1.04m 之间的距离获得 x 分;y 点表示 1.05 和 1.09 之间的距离;等范围不一致。用户将输入准确的时间/距离/高度/等。为每个学生输入电子表格和一个公式应该自动计算分数。
我正在使用嵌套IF(COUNTIF(VLOOKUP
公式:
在参考数据表中搜索输入的值(例如 2.18),如果存在,则返回点值。如果不存在……</p>
…将值减少 0.01(即 2.17)并重试,如果存在则返回点值。如果不存在……</p>
…将值减少 0.02(即 2.16)并重试,如果存在则返回点值。如果不存在……</p>
...将值减少 0.03(即 2.15)并重试...</p>
…ETC。直到返回一个值。最大范围为 0.05,因此不超过 5 个周期。
=IF(COUNTIF(距离,D4),VLOOKUP(D4,$A$4:$B$13,2,FALSE),IF(COUNTIF(距离,D4-0.01),VLOOKUP(D4-0.01,$A$4:$B $13,2,FALSE),IF(COUNTIF(距离,D4-0.02),VLOOKUP(D4-0.02,$A$4:$B$13,2,FALSE),IF(COUNTIF(距离,D4-0.03),VLOOKUP( D4-0.03,$A$4:$B$13,2,FALSE),VLOOKUP(D4-0.04,$A$4:$B$13,2,FALSE)))))
该公式似乎有效,但是在测试时,尽管存在匹配项,但仍有许多值返回 #N/A。返回 #N/A 的那些似乎没有模式。使用公式评估和错误检查无助于提供答案。我已经尝试了所有常用的技巧——确保格式(文本/数字/一般)是一致的;检查空格,验证公式中的值与 VLOOKUP 表中的值完全一致——一切正常且正确,但仍随机返回 #N/A 值。链接到下面的数据图像。
关于发生了什么的任何想法,或者是否有更雄辩的公式?
解决方案
您可以通过使用 、 和 来做到index
这Match
一点VLookup
。下面是我使用的代码,它查找最接近的值并在第二行中找到匹配项。(您可能需要更改表名和列表名。
=INDEX(Table_Points,MATCH(VLOOKUP(B2,Table_Points,List_Points,TRUE),List_Points,0),2)
编辑(只要您将查找表更改为以最小的数字和顶部的点升序,此代码就应该适用于您的确切工作簿示例):
=INDEX($A$4:$B$13,MATCH(VLOOKUP(D4,$A$4:$B$13,1),$A$4:$A$13),2)
其中 Table_Points 是整个表格(距离和点),而 List_Points 只是距离列表。
如果您需要更多说明,请告诉我。
推荐阅读
- xml - 使用命名空间的 XML 到 XSLT 转换不起作用
- python - 连续数 Python 的乘法表
- php - 如何使用 jquery 更改输入字段数组
- python - 如何使热图中的所有单元格为正方形
- swift - 如何使用 firebase/firestore 在 SwiftUI 中将数据加载到视图中
- c# - DataGrid 作为自定义 UserControl
- javascript - CRUD从vuejs vuex中的外部组件添加对象
- ssis - Google.Cloud.Storage.V1 Nuget 包在 SSIS 脚本任务中自动删除
- python - python中内置函数的子函数/类操作
- python - 不平衡分类的权重