ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[Excel 函数与公式] 【67期】员工调动统计

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-11-23 11:48 | 显示全部楼层
这个公式基本上大家差不多。我的还比较长
=OFFSET(题目!A2,MID(10^6+SMALL(IF(ISNA(MATCH(题目!F3:F188&题目!G3:G188&题目!H3:H188,题目!A3:A188&题目!B3:B188&题目!C3:C188,)),ROW(1:186)*1000+MATCH(题目!H3:H188,题目!C3:C188,),999999),ROW(1:25)),{2,2,2,2,5,5},3),{7,8,5,6,0,1})&""
这题延伸一下挺有意思的,就离职的和刚分配过来的,则七月份或八月份没有内容的,如何排错,列个完整的人事调动。如图形式,感兴趣的朋友,试一下。本来应该有个关键字段,表格中没有,就按姓名是唯一的来处理。



[ 本帖最后由 冻豆腐 于 2010-11-23 11:50 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-11-23 12:24 | 显示全部楼层
有点儿疑问,以“刘俊琪”为例,这个人的位置是个关键。
实际上 C列和 H列数据 可能存在重叠,如果重叠时以哪个为先,当然楼上附件没问题。
举个列子,比如:H2这个人正好发生调动,而C2是新调入的员工。怎么办?

TA的精华主题

TA的得分主题

发表于 2010-11-23 13:16 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
这个问题是楼主表格设计的问题,本来应该有个唯一确定的id号,类似省份证号等,这样才会正常。这题我没有做过,楼主表达过这个意思,我把他想的做个表格,如果大家有更好的设计和修改方案,一起放上来,能解决实际中的问题,才能体现excel的用处。

TA的精华主题

TA的得分主题

发表于 2010-11-23 17:18 | 显示全部楼层

回复 27楼 ff8feng 的帖子

你倒是说说,错哪儿了?实际上公式还可以更短!

[ 本帖最后由 fangjianp 于 2010-11-23 17:21 编辑 ]

TA的精华主题

TA的得分主题

发表于 2010-11-23 18:07 | 显示全部楼层

回复 34楼 fangjianp 的帖子

你的是正确的,ff8feng 帖子我没仔细审,技术分2分会加的。
多单元格下拉一样的。

TA的精华主题

TA的得分主题

发表于 2010-11-23 21:04 | 显示全部楼层
居然有这么多解法,PHONETIC、MOD、LOOKUP、MID、TEXT、ISNA、FIND这么多处理文字的都能派上用场,开眼界了.
leeyong大哥,我的偶像^-^
Yangqianqian和wangg913把对应的单元格捏在一起了,就像山版说的,饺子包得老好看了.
学习涅磐86970,一开始是打算用LOOKUP试一下的,可惜功课不够,具体解释一下,好吗?
看了你们,我把公式减到200以内了
=INDEX(T(OFFSET(题目!A2,IF({1,1,1,1,0,0},ROW(1:187),MATCH(题目!H3:H189&0,题目!C3:C189&0,)),{7,8,5,6,0,1})),SMALL(IF(T(OFFSET(题目!A2,MATCH(题目!H3:H188,题目!C3:C188,),{0,1}))=题目!F3:G188,187,ROW(1:186)),A4:A28))
这是2007下测试的,应该还可以减吧,如果把ROW(1:187)改成ROW(A:A),也是可以的,但速度可能不行.

TA的精华主题

TA的得分主题

发表于 2010-11-24 09:58 | 显示全部楼层
原帖由 fangjianp 于 2010-11-23 17:18 发表
你倒是说说,错哪儿了?实际上公式还可以更短!

测试时是选定整个区域输入多单元数组公式的,既然版主说下拉也行那就行吧,莫激动,莫激动。
还有涅磐兄的公式不知何故我在03版下返回N/A,请其他用03的帮忙试下

TA的精华主题

TA的得分主题

发表于 2010-11-24 18:47 | 显示全部楼层
原帖由 ff8feng 于 2010-11-24 09:58 发表

测试时是选定整个区域输入多单元数组公式的,既然版主说下拉也行那就行吧,莫激动,莫激动。
还有涅磐兄的公式不知何故我在03版下返回N/A,请其他用03的帮忙试下

=================================
我的2003版测试出错,2007版正常

TA的精华主题

TA的得分主题

发表于 2010-11-24 23:35 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
学习了各位高手的思路与精湛的技巧(特别是大头兄),在此基础上,仅就此题得出正确答案而言,再将该公式进行了简化,也许在高手来看这里使用PHONETIC有些取巧了
如果可以借助A4:A28,使用公式
=INDEX(题目!A:I,MID(10^8+SMALL(IF(ISERR(FIND(题目!F3:F188&题目!G3:G188&题目!H3:H188,PHONETIC(题目!A3:C188))),ROW(3:188)/1%%+MATCH(题目!H3:H188,题目!C:C,),8^8),A4:A28),{2,2,2,2,6,6},4),{8,9,6,7,1,2})&""
字符数187个,
如果不借助则加等号190个字符,我是2007格式


[ 本帖最后由 yvhgydn 于 2010-11-24 23:37 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

TA的精华主题

TA的得分主题

发表于 2010-11-25 11:26 | 显示全部楼层
原帖由 ff8feng 于 2010-11-23 11:07 发表
版主的结果表里存在不少问题撒,有遗漏人员和张冠李戴的现象。
刚才在学习大家答案之余顺手帮忙做个份测试,结果如附件。

PS: 版主给幸苦费撒。


谢谢指出,我的那个公式是有些审题不严,虽然是下拉,不过也算是多单元格数组公式。
如果硬要只用一个公式的话,只需要把A4改为A4:A28就行了,另外还可以省掉里面的$字符。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-4 01:23 , Processed in 0.050723 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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