ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: guangyp

[经验分享]公式思路是怎么来的?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2007-4-27 21:03 | 显示全部楼层
受益匪浅,收藏了!谢谢[em23][em23][em23]

TA的精华主题

TA的得分主题

 楼主| 发表于 2007-4-27 21:09 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

回复口是心非在2007-4-27 20:58:56的发言

记得山菊花版主有一个使人印象很深的精彩解释贴子:

QUOTE:

更多的闪光点请看函数版置顶贴[答疑解惑] 函数公式解释专用帖,快去吸收吧。

TA的精华主题

TA的得分主题

发表于 2007-4-28 09:32 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2007-4-28 16:46 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2007-4-29 10:19 | 显示全部楼层

[分享]对于guangyp版主的“公式思路是怎么来的?”的理解

对于guangyp版主的“公式思路是怎么来的?”的理解

 

最近通过学习《精粹》已经发现了通过对复杂公式的理解,挖掘其中的精髓思路是至关重要的,同时如果要理解这些公式,还必须深刻理解公式中所涉及到的函数的用法,所以,理解复杂的经典的公式,可以一举两得。即能学到思路,又能促使我们去寻找其中函数的用法。此理解和guangyp的想法一致。

 

对于guangyp对把右边数次从文本中分离出来的思路, 我个人认为真是一级棒, 但是他的解释对于高水平的人来说, 应该很容易,一看就有启发,而对于刚入门的读者(比如我),理解起来就要花很多功夫。 当然花费功夫来理解这些思路和用法是非常值得的。

 

下面,我将我的理解拆分,再次解析一下其中我已经理解的性质。希望能对如我一样的入门者,理解的速度可以快些!

 

性质1 =RIGHT(A2,SUM(LEN(A2)-LEN(SUBSTITUTE(A2,{0,1,2,3,4,5,6,7,8,9},))))   

http://club.excelhome.net/viewthread.php?tid=236279&replyID=&skin=0 请参照gdliyy的详细解析, 非常透彻。

 

性质 2 =MID(A2,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A2&1234567890)),100)

 

通过find函数找到A2单元格中所有数字的位置,其中最小的位置就是数字的起始位置,其满足mid函数的第2个函数的要求。

 

其中, FIND({0,1,2,3,4,5,6,7,8,9},A2&1234567890) 是分别寻找0~9A2&1234567890字符串中的位置。 因为a2中的字符串是数字在后,所以1234567890要连接在a2的后面。

 

性质 3 到现在还没有理解, 还请guangyp指教

 

TA的精华主题

TA的得分主题

发表于 2007-4-29 10:25 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

[分享]对于guangyp版主的“公式思路是怎么来的?”的理解2

对于guangyp版主的“公式思路是怎么来的?”的理解

 

最近通过学习《精粹》已经发现了通过对复杂公式的理解,挖掘其中的精髓思路是至关重要的,同时如果要理解这些公式,还必须深刻理解公式中所涉及到的函数的用法,所以,理解复杂的经典的公式,可以一举两得。即能学到思路,又能促使我们去寻找其中函数的用法。此理解和guangyp的想法一致。

 

对于guangyp对把右边数次从文本中分离出来的思路, 我个人认为真是一级棒, 但是他的解释对于高水平的人来说, 应该很容易,一看就有启发,而对于刚入门的读者(比如我),理解起来就要花很多功夫。 当然花费功夫来理解这些思路和用法是非常值得的。

 

下面,我将我的理解拆分,再次解析一下其中我已经理解的性质。希望能对如我一样的入门者,理解的速度可以快些!

 

理解如果有误, 务请帮忙指正。

TlcWYzNv.rar (5.23 KB, 下载次数: 8)

TA的精华主题

TA的得分主题

发表于 2007-4-29 12:30 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
谢谢guangyp,不仅授鱼还授渔[em17]

TA的精华主题

TA的得分主题

 楼主| 发表于 2007-4-29 18:58 | 显示全部楼层

回复lukelu对公式的理解

lukelu对公式的要点理解的很不错,说明你已经吸收了公式中的很多闪光点,相信理解过后你的水平以经提高了不少。这也是我没写详细公式解析过程的原因,个人认为,越是刚入门的朋友,越需要自己去花时间理解公式,因为这与直接看公式解析所得到的收获程度是不同的,花了时间后才理解得到的是自已的,而直接看公式解析理解的还是别人的,你得到的只是一个感叹号!

对于性质3的理解,在你发来的短信中大体上是正确的,但还是得注意lookup的这种用法是有要求的,即它的第二个参数是要求以升序排序,才会得到最接近查找值的数据,它有两种返回结果的用法,一种是直接返回第二参数的查找结果,另一种是返回查到的第二参数位置所对应的第三参数数据,性质三的公式用的就是后一种。附上你的短信内容:

QUOTE:
性质 3,=LOOKUP(9E+307,--RIGHT(A2,ROW(1:100)),RIGHT(A2,ROW(1:100)))
RIGHT(A2,ROW(1:100)): 生成{"5";"45";"345";"0345";"00345";"d00345";"jd00345";"jd00345";....}
--RIGHT(A2,ROW(1:100)):将以上生成的数组中的数字字符转换成数值,其他非数字字符的是错误值
9e+307: 是很大的数值
此公式的目的就是要在--RIGHT(A2,ROW(1:100))生成数组中找到最大的数值所对应的
{"5";"45";"345";"0345";"00345";"d00345";"jd00345";"jd00345";....}数组中的字符。

顺便提一下,对发现的每个性质,解法并不是唯一的,它还可以变化出很多种解法,这一点gdliyy版主也指出来了,不知大家是否注意到。

[此贴子已经被作者于2007-4-29 19:21:38编辑过]

TA的精华主题

TA的得分主题

发表于 2007-4-29 22:00 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2007-4-30 07:17 | 显示全部楼层

自己要立即获得一个复杂的公式,是有点难度的,但高手做好的,要快速学会也是有巧门的:

1、首先必须去查找该函数的功能、参数,这点清楚,问题就不大了。

2、用公式审核,逐步求值的方法,可以看的一清二楚。

没问题了吧?

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-25 09:35 , Processed in 0.038816 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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