新足迹

 找回密码
 注册

精华好帖回顾

· [Kanre's Kitchen Time] 孜然麻辣风味煎馒头片+ 玉米面枸杞粥 (2008-11-13) Tiger_Karen · 抖擞DIY精神,勇补车窗 (2008-1-30) zhengtao
· [JMMS厨房] 今晚吃烤鱼!!!!! (2010-4-27) jmms_smmj · 【更新】辐射辐射辐射,自测电辐射 212楼悉尼ivy531同学新增海量图片 (2014-10-6) comeseeme
Advertisement
Advertisement
查看: 1776|回复: 23

[IT] Excel 求助,请指点。 [复制链接]

发表于 2014-3-15 11:29 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 sayaaz 于 2014-3-15 11:33 编辑

有一组数据,左边第一列是人名,右边是每个人每月业绩统计。现在需要找出对应每个人名,有业绩登记的最后一个月是哪个月。

具体见图。怎么实现呢? 整个数据很大,有5,6百个人。


  
  
  March
  
  April
  
  May
  
  June
  
  July
  
  August
  
  September
  
  October
  
  November
  
  December
  
  A
  
  
151
  
  
19
  
  
93
  
  
  
  
  
  
125
  
  
139
  
  
168
  
  
56
  
  
53
  
  B
  
  
78
  
  
169
  
  
108
  
  
29
  
  
54
  
  
103
  
  
51
  
  
15
  
  
117
  
  
  
  C
  
  
  
  
126
  
  
5
  
  
23
  
  
13
  
  
125
  
  
174
  
  
  
  
  
  
  
  D
  
  
25
  
  
18
  
  
25
  
  
  
  
14
  
  
136
  
  
157
  
  
90
  
  
156
  
  
151
  
  E
  
  
57
  
  
  
  
141
  
  
167
  
  
144
  
  
11
  
  
  
  
  
  
  
  
  
  F
  
  
30
  
  
  
  
69
  
  
148
  
  
81
  
  
62
  
  
93
  
  
53
  
  
  
  
  
  G
  
  
157
  
  
87
  
  
28
  
  
121
  
  
164
  
  
151
  
  
102
  
  
32
  
  
165
  
  
75
  


  A
  
  December
  
  B
  
  November
  
  C
  
  September
  
  D
  
  December
  
  E
  
  August
  
  F
  
  October
  
  G
  
  December







       

本帖子中包含更多资源

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

x
敬畏耶和华是智慧的开端,认识至圣者便是聪明。
Advertisement
Advertisement

发表于 2014-3-15 11:34 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
我晕,为啥我贴不了Excel 的图呢?

发表于 2014-3-15 11:59 |显示全部楼层
此文章由 forestlevy 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 forestlevy 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 forestlevy 于 2014-3-15 12:26 编辑

For person "A", Table starts at Cell A1
=OFFSET($A$1,0,MAX((2:2>0)*COLUMN(2:2))-1)

发表于 2014-3-15 12:00 |显示全部楼层
此文章由 forestlevy 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 forestlevy 所有!转贴必须注明作者、出处和本声明,并保持内容完整
用Array输入- ctrl+shift+enter

发表于 2014-3-15 12:02 |显示全部楼层
此文章由 forestlevy 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 forestlevy 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 forestlevy 于 2014-3-15 12:27 编辑

改了一下offset的引用项。应该不需要其他的变动了。

评分

参与人数 1积分 +6 收起 理由
sayaaz + 6 感谢分享

查看全部评分

发表于 2014-3-15 13:55 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
forestlevy 发表于 2014-3-15 12:02
改了一下offset的引用项。应该不需要其他的变动了。

没用过offset,学习先,多谢。
敬畏耶和华是智慧的开端,认识至圣者便是聪明。
Advertisement
Advertisement

发表于 2014-3-15 14:04 |显示全部楼层
此文章由 jy00064164 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 jy00064164 所有!转贴必须注明作者、出处和本声明,并保持内容完整
用另外一张表,把月份用1-12表示,每个格子 if不为空,就等于第一行的月份数字,否则为空
copy down
然后用max就可以了

评分

参与人数 1积分 +6 收起 理由
sayaaz + 6 感谢分享

查看全部评分

发表于 2014-3-15 14:42 |显示全部楼层
此文章由 朽木白菜 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 朽木白菜 所有!转贴必须注明作者、出处和本声明,并保持内容完整
可以index和match function一起用.
你试试在cell c12输入‘=INDEX($B$2K$8,MATCH($A12,$A$2A$8,0),MATCH($B12,$B$1K$1,0))’

评分

参与人数 1积分 +6 收起 理由
sayaaz + 6 感谢分享

查看全部评分

发表于 2014-3-15 15:13 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
jy00064164 发表于 2014-3-15 14:04
用另外一张表,把月份用1-12表示,每个格子 if不为空,就等于第一行的月份数字,否则为空
copy down
然后用 ...

我也想过这个,就是怕前面整理数据太麻烦,有5,6百个row, 20多个column, 不知道重整据要多久,最近做一些整理,可能数据太多,有时候一个计算就几十分钟,害我别的什么都做不了, 有几次不得不下班时开着spreadsheet, 第二天早上看结果...  
敬畏耶和华是智慧的开端,认识至圣者便是聪明。

发表于 2014-3-15 15:14 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
朽木白菜 发表于 2014-3-15 14:42
可以index和match function一起用.
你试试在cell c12输入‘=INDEX($B$2K$8,MATCH($A12,$A$2A$8,0),MATC ...

都没用过,先去学习。
敬畏耶和华是智慧的开端,认识至圣者便是聪明。

发表于 2014-3-15 15:56 来自手机 |显示全部楼层
此文章由 jy00064164 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 jy00064164 所有!转贴必须注明作者、出处和本声明,并保持内容完整
sayaaz 发表于 2014-3-15 15:13
我也想过这个,就是怕前面整理数据太麻烦,有5,6百个row, 20多个column, 不知道重整据要多久,最近做一 ...

不能吧。。。我平时几万行的数据也很快啊。。。600x20应该不会用那么久吧。。。
Advertisement
Advertisement

发表于 2014-3-15 16:10 |显示全部楼层
此文章由 zniaelbalb 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 zniaelbalb 所有!转贴必须注明作者、出处和本声明,并保持内容完整
试试vlookup功能。

发表于 2014-3-15 16:54 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
jy00064164 发表于 2014-3-15 15:56
不能吧。。。我平时几万行的数据也很快啊。。。600x20应该不会用那么久吧。。。 ...

是整理别的数据,把我吓着了,我从没想到Excel 可能会用到那么多时间计算,可能有些公式太麻烦,link 一堆,if 一堆...
敬畏耶和华是智慧的开端,认识至圣者便是聪明。

发表于 2014-3-15 22:01 |显示全部楼层
此文章由 hj1985 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 hj1985 所有!转贴必须注明作者、出处和本声明,并保持内容完整
按照jy00064164的思路

本帖子中包含更多资源

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

x

评分

参与人数 1积分 +6 收起 理由
sayaaz + 6 感谢分享

查看全部评分

发表于 2014-3-16 11:41 |显示全部楼层
此文章由 Aries2012 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 Aries2012 所有!转贴必须注明作者、出处和本声明,并保持内容完整
LOOKUP函数可以找每一行的最后一个非空单元格

C12=LOOKUP(1,0/B2:K2,$B$1K$1)  数组函数 CTRL+SHIFT+ENTER

本帖子中包含更多资源

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

x

评分

参与人数 2积分 +10 收起 理由
ICEKE20130418 + 4
sayaaz + 6

查看全部评分

发表于 2014-3-16 13:27 |显示全部楼层
此文章由 wonderwoo 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 wonderwoo 所有!转贴必须注明作者、出处和本声明,并保持内容完整
Aries2012 发表于 2014-3-16 11:41
LOOKUP函数可以找每一行的最后一个非空单元格

C12=LOOKUP(1,0/B2:K2,$B$1K$1)  数组函数 CTRL+SHIFT+ENT ...

如果我把第一个1换成0,公式也一样正确。
这里lookup value到底起个什么作用呢?
Advertisement
Advertisement

发表于 2014-3-16 13:42 |显示全部楼层
此文章由 Aries2012 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 Aries2012 所有!转贴必须注明作者、出处和本声明,并保持内容完整
wonderwoo 发表于 2014-3-16 13:27
如果我把第一个1换成0,公式也一样正确。
这里lookup value到底起个什么作用呢? ...

第一,Lookup_value 是 LOOKUP 在数组中搜索到的值。Lookup_value 可以是数字、文本、逻辑值,也可以是代表某个值的名称或引用。
第二,如果 LOOKUP 找不到 lookup_value,它会使用该数组中小于或等于 lookup_value 的最大值。


LOOKUP的具体查找原理叫做二分法,你可以去google相关的帖子来看。

这里你只要用大于等于0的数都可以,用1只是一个默认的习惯而已。

评分

参与人数 2积分 +8 收起 理由
sayaaz + 6 你太有才了
lm8628 + 2 你太有才了

查看全部评分

发表于 2014-3-16 22:29 |显示全部楼层
此文章由 voidray 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 voidray 所有!转贴必须注明作者、出处和本声明,并保持内容完整
新手弱弱的试了下。这个表格里面最头疼的是处理头和尾中间的空白。

比方说 employee A Jun和Jul两个月没有任何记录,但是到了aug又有了,而且之后几个月都有数据一直到dec。虽然人一眼看的出来dec是这个employee有业绩登记的最后一个月,怎么样告诉excel无视jun和jul的空白是很头疼的。但如果倒着看就不是很困难:首先看这个员工在dec有数据吗?有的话dec就是今年这个员工的最后一次记录,如果没有的话看看nov有数据不。如果nov也没有,那就看oct,如果nov有的话那最后一个有绩效的月份就是nov。同样的道理看oct,如果oct有那就是oct,如果oct没有那就继续看sep等等。。。

根据你提供的数据你在cell L2输入
=IF(ISBLANK(K2),IF(ISBLANK(J2),IF(ISBLANK(I2),IF(ISBLANK(H2),IF(ISBLANK(G2),IF(ISBLANK(F2),,$F$1),$G$1),$H$1),$I$1),$J$1),$K$1)
的结果应该是dec。把这个函数copy到L8你就能得到个个employee有记录的最后一个月。
注意:由于懒惰我只用了F1到K1的数据,也就是说逻辑判断到jul就为止了。如果你要用的话得把dec到jan的逻辑都输进去。

欢迎大神指点。

评分

参与人数 1积分 +6 收起 理由
sayaaz + 6

查看全部评分

发表于 2014-3-17 02:16 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
voidray 发表于 2014-3-16 22:29
新手弱弱的试了下。这个表格里面最头疼的是处理头和尾中间的空白。

比方说 employee A Jun和Jul两个月没有 ...

我想过从后面查找第一个空格,不知道有没有一个直接的公式。用Ifblank 伤不起啊,数据有50+列
敬畏耶和华是智慧的开端,认识至圣者便是聪明。

发表于 2014-3-17 02:24 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
Aries2012 发表于 2014-3-16 11:41
LOOKUP函数可以找每一行的最后一个非空单元格

C12=LOOKUP(1,0/B2:K2,$B$1K$1)  数组函数 CTRL+SHIFT+ENT ...

矮马,这个方法实在太妙了,明白了lookup, 但是跟这个方法没联系上,公式没看懂,但是会用了,你太厉害了。

我想明白这个公式,应该去google 什么?
敬畏耶和华是智慧的开端,认识至圣者便是聪明。

发表于 2014-3-17 09:27 |显示全部楼层
此文章由 Aries2012 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 Aries2012 所有!转贴必须注明作者、出处和本声明,并保持内容完整
sayaaz 发表于 2014-3-17 02:24
矮马,这个方法实在太妙了,明白了lookup, 但是跟这个方法没联系上,公式没看懂,但是会用了,你太厉害 ...

你看看这个帖子吧~  http://club.excelhome.net/thread-807304-1-1.html

看完你应该就懂了~希望没把你绕晕了~~

评分

参与人数 1积分 +6 收起 理由
sayaaz + 6 感谢分享

查看全部评分

Advertisement
Advertisement

发表于 2014-3-17 09:29 |显示全部楼层
此文章由 Aries2012 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 Aries2012 所有!转贴必须注明作者、出处和本声明,并保持内容完整
sayaaz 发表于 2014-3-17 02:24
矮马,这个方法实在太妙了,明白了lookup, 但是跟这个方法没联系上,公式没看懂,但是会用了,你太厉害 ...

BTW, 谢谢MM的加分~~

银靴加分就是豪气啊~~

发表于 2014-3-17 16:53 |显示全部楼层
此文章由 ICEKE20130418 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 ICEKE20130418 所有!转贴必须注明作者、出处和本声明,并保持内容完整
Aries2012 发表于 2014-3-16 11:41
LOOKUP函数可以找每一行的最后一个非空单元格

C12=LOOKUP(1,0/B2:K2,$B$1K$1)  数组函数 CTRL+SHIFT+ENT ...

感谢分享!

发表于 2014-3-17 20:31 |显示全部楼层
此文章由 sayaaz 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 sayaaz 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 sayaaz 于 2014-3-18 02:26 编辑
Aries2012 发表于 2014-3-17 09:27
你看看这个帖子吧~  http://club.excelhome.net/thread-807304-1-1.html

看完你应该就懂了~希望没把你 ...


我已经晕了。你刚刚又成功击倒了我一个同事,他表示今晚没法睡觉了,"The elegant formula drives him nuts. He can't figure it out. "

评分

参与人数 1积分 +4 收起 理由
Aries2012 + 4 谢谢夸奖~~嘻嘻

查看全部评分

敬畏耶和华是智慧的开端,认识至圣者便是聪明。

发表回复

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

本版积分规则

Advertisement
Advertisement
返回顶部