ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 525|回复: 4

[分享] "第一次遇到这种查找,请求帮忙"学习反馈

[复制链接]

TA的精华主题

TA的得分主题

发表于 2022-12-22 09:20 | 显示全部楼层 |阅读模式
感谢w4275老师的热心指导,以前由于各种原因,学习了都没有反馈,今天发个学习反馈贴子。

本次求助,w4275老师给出两种解决方案:

第一种是加入了MMULT函数,自己虽然不太熟悉,但都是以各种方式在消化知识。
  1. =FILTER(A1:E1,MMULT(COLUMN(A:R)^0,N(A2:E19=TODAY())))
复制代码
这个方案存在的问题就是当找不到要找的值时,就会返回"#CALC"。这个问题好解决,我加入“IFERROR”函数就可以了。

第二种解决方案是运用了熟悉的INDEX函数,但这个思路我从类没有遇到过,也是大开眼界了,这种解决方案需要用到数组运算的知识,慢慢体会的话还是能够理解的。
  1. =INDEX(1:1,MAX(IF(A2:E19=TODAY(),COLUMN(A:E))))
复制代码
唯一的不足,还是找不到值时默认返回第一个值,而不是我需要的空值,如何解决也是让我费了点时间。因为如果找不到值,这个函数是返回0而不是返回错误值的,而INDEX这个函数遇到参数0时好像就近返回第一个值了。这个就不能像前面的情况,加个“IFERROR”函数就能解决了。我最后的解决方案是在前面再加一列,这一列全是空值,它不是要返回第一个值吗?那就让它返回空值。修改了函数之后,当它找不到所要找的值时,最后却返回了0,无奈,我又在函数后面加上&"",最终才让它显示为空。
1.png
附件我已经上传,Sheet2是我修改后的函数,供大家交流。

这种查找没遇到过.rar

16.64 KB, 下载次数: 5

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2022-12-22 10:15 | 显示全部楼层
找不到可以这样,不用iferror函数
  1. =FILTER(A1:E1,MMULT(COLUMN(A:R)^0,N(A2:E19=TODAY())),"")
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-12-22 10:22 | 显示全部楼层
w4275 发表于 2022-12-22 10:15
找不到可以这样,不用iferror函数

对的,找不到返回空值,这样函数更简短,更简单。

TA的精华主题

TA的得分主题

发表于 2022-12-22 10:25 | 显示全部楼层
本帖最后由 象山海鲜 于 2022-12-22 10:28 编辑

第一种:
FILTER自己就有容错的
  1. =FILTER(A1:E1,MMULT(COLUMN(A:R)^0,N(A2:E19=TODAY())),"")
复制代码

第二种如你所愿的加 IFERROR 函数
  1. =IFERROR(INDEX(1:1,LARGE(IF(A2:E19=TODAY(),COLUMN(A:E)),1)),"")
复制代码
  1. =IFERROR(INDEX(1:1,1/MIN(IF(A2:E19=TODAY(),1/COLUMN(A:E)))),"")
复制代码


都是唯一值的可以
  1. =CONCAT(REPT(A1:E1,A2:E19=TODAY()))
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-12-22 10:49 | 显示全部楼层
本帖最后由 bgt1982 于 2022-12-22 10:53 编辑
象山海鲜 发表于 2022-12-22 10:25
第一种:
FILTER自己就有容错的

秒啊!一题多解来了,又增加三种方法,就喜欢这样,即拓展思路,又能学到更多。感谢象版!
其实我当时也想到过LARGE函数,无奈功力太浅,最后还是无法解决。MIN函数用在这里非常秒,让函数找不到无法返回0,只能返回错误值。CONCAT函数第一次遇到,我要找资料学习一下。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-5-13 08:43 , Processed in 0.045153 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表