ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[Excel 函数与公式] [第42期]字符串中符合范围数的和[已结]

[复制链接]

TA的精华主题

TA的得分主题

发表于 2008-12-29 09:56 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
点评得很细致,版主辛苦了,谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2008-12-29 10:52 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
确实如冻豆腐所说的,其中有2个答案,冻豆腐和wddn的公式在处理小数点时,由于是逐位判断尾部是否是文本的,所以在判断过程中会误判"数字.."为数字,从而造成丢失"数字.".

由于题目中没有说明"数字...."不会出现,原则上公式应该具有处理这种情况的. 谢谢冻豆腐指出了这种情况.

出题时,目的就是提取数字串,不需要考虑特殊情况,所以在字符串的说明上加了较多的排除情况(+,-,*,/), 但还是有一些情况在题目说明里没有排除,当时主要考虑到的是日期,后来XCD补充了科学记数(因此后来加了这个补充说明), 实际上后来我还发现了":"的特殊情况,比如"向西:30向东",这种情况wddn和yoka也会丢失30.

因此评分时,主要是按出题本意来考量的,实际上大家在出题时最难的却是题目的说明,既要清楚地表达要求,又要防止产生歧义,同时又不能透露技巧......

由于如果题目说明不清晰会带来不公平性,有的去考虑,有的没去考虑(会增加难度),所以追求题目说明明确一直是出题者的目标,但有时确实较难做到完美.

TA的精华主题

TA的得分主题

发表于 2008-12-29 12:49 | 显示全部楼层
原帖由 willin2000 于 2008-12-29 10:52 发表
确实如冻豆腐所说的,其中有2个答案,冻豆腐和wddn的公式在处理小数点时,由于是逐位判断尾部是否是文本的,所以在判断过程中会误判"数字.."为数字,从而造成丢失"数字.".

由于题目中没有说明"数字...."不会出现,原则 ...


嘿嘿!越讨论越有意思!看来还是“改革开放”好!willin2000版主已经很辛苦很负责了,不必过分在意!大家明白就行了!再次谢谢版主的精彩出题及详尽精妙的讲解!

TA的精华主题

TA的得分主题

发表于 2010-4-20 12:39 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-6-27 11:14 | 显示全部楼层
真厉害,这个单独求出数值并相加可真好

TA的精华主题

TA的得分主题

发表于 2010-8-26 09:59 | 显示全部楼层
原帖由 willin2000 于 2008-12-24 15:52 发表
本期总结.

从回复的答案来看,主要有以下3中类型.

第一类是逐步去除法,如FDD:
优化FDD后的:
=SUM(TEXT(REPLACE(0&TEXT(MID(A1&"CC",ROW($1:$100),COLUMN(A:P)),),LEN(0&TEXT(MID(A1&"CC",ROW($1:$100),COLUMN ...

看来自己的函数还差的远,还看不懂这个函数

TA的精华主题

TA的得分主题

发表于 2010-11-3 11:06 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-12-7 14:14 | 显示全部楼层
做过一个超复杂的这个,今天看一下版主的,唉,算了,不想说了,要说的就是:你们辛苦了

TA的精华主题

TA的得分主题

发表于 2012-10-31 22:26 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-9-5 12:05 | 显示全部楼层
首先想到的是这个思路(128字符):
  1. =SUM(TEXT(LEFT(TEXT(MID(A1&"a",ROW($1:99),COLUMN(B:R)),),COLUMN(A:Q)),"[<10]!0;[>1e13]!0;0%;!0")*ISERR(-MID(A1,ROW($1:99)-1,2)))
复制代码
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-4 00:57 , Processed in 0.057831 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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