设为首页 登录 注册
首页 中人社区 中人博客
查看: 6561|回复: 12
打印 上一主题 下一主题

[求助] excel排班转换

[复制链接]
o圆o    

6

主题

5

听众

810

积分

秀才

Rank: 5Rank: 5

签到天数: 34 天

[LV.5]常住居民I

注册时间
2011-8-11
最后登录
2012-9-28
积分
810
精华
0
主题
6
帖子
54
跳转到指定楼层
楼主
发表于 2012-7-28 11:22:59 |只看该作者 |倒序浏览
各位同仁,想麻烦请教以下问题:
4 o- m+ ]! Y; @( g因我司排班由系统批量导出,现需排版成签收表形式。" v) ]( N! L; m; g, \% K2 x
如何将sheet1的数据,根据函数自动转换到sheet2,ABCD表示员工姓名,想要的结果如sheet2 A列所示,但本人设的公式无法达到该有的效果。
. i- E* V" q- K5 h, a  o现求助,谢谢!

本帖子中包含更多资源

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

坚持!还是坚持!

7

主题

17

听众

6214

积分

贡士

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

签到天数: 295 天

[LV.8]以坛为家I

注册时间
2011-9-30
最后登录
2021-9-30
积分
6214
精华
0
主题
7
帖子
601
沙发
发表于 2012-7-28 12:05:11 |只看该作者
你可以用下这个函数
( K% n) h. z$ l8 q9 @VLOOKUP.在表格或数值数组的首列查找指定的数值,并由此返回表格或数组中该数值所在行中指定列处的数值。- p. l1 P# x/ j" ]* t1 \
VLOOKUP(查找值,区域,列序号,逻辑值)
6 g8 r6 D+ m; T7 X) t( A; b$ R7 g- Q& ^“查找值”:为需要在数组第一列中查找的数值,它可以是数值、引用或文字符串。 & \9 G, L2 V. u: e2 f% E* f
“区域”:数组所在的区域,如“B2:E10”,也可以使用对区域或区域名称的引用,例如数据库或数据清单。 # H3 C/ b7 u) \4 h$ a$ \
“列序号”:即希望区域(数组)中待返回的匹配值的列序号,为1时,返回第一列中的数值,为2时,返回第二列中的数值,以此类推;若列序号小于1,函数VLOOKUP 返回错误值 #VALUE!;如果大于区域的列数,函数VLOOKUP返回错误值 #REF!。 & D4 Q0 s* \+ _7 W* O( h) H
“逻辑值”:为TRUE或FALSE。它指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如果为 TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于“查找值”的最大数值;如果“逻辑值”为FALSE,函数 VLOOKUP 将返回精确匹配值。如果找不到,则返回错误值 #N/A。如果“查找值”为文本时,“逻辑值”一般应为 FALSE 。另外:
& Z. k1 b9 h( g* n& T+ d·如果“查找值”小于“区域”第一列中的最小数值,函数 VLOOKUP 返回错误值 #N/A。 " l0 Q4 |7 X6 I0 d" i
·如果函数 VLOOKUP 找不到“查找值” 且“逻辑值”为 FALSE,函数 VLOOKUP 返回错误值 #N/A。

点评

和闲  他表格中已经使用了VLOOKUP公式,第一列公式可以输出,但是换到另一列就显示不出来了。有待研究 奇怪了  发表于 2012-7-28 21:13  回复
回复

使用道具 举报

26

主题

15

听众

5192

积分

贡士

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

签到天数: 58 天

[LV.5]常住居民I

注册时间
2011-4-7
最后登录
2016-9-7
积分
5192
精华
0
主题
26
帖子
451
板凳
发表于 2012-7-28 12:11:00 |只看该作者
没看董
回复

使用道具 举报

54

主题

36

听众

6398

积分

版主

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

签到天数: 35 天

[LV.5]常住居民I

注册时间
2008-11-21
最后登录
2016-11-3
积分
6398
精华
7
主题
54
帖子
578
地板
发表于 2012-7-29 01:00:50 |只看该作者
本帖最后由 和闲 于 2012-7-29 01:03 编辑
3 j; Y$ ]1 W& H
) p6 T2 r5 V7 r3 S+ g5 E) \不知道怎么回事,我重新设计个表格按你这个公式来说都是可以的。
7 `& s. m! w6 ]1 ^5 X% `
; W2 H4 C7 ^: c# m
不过我找到了另外一种方法,用数据透视表。

9 `0 k  w. |- B( \0 [1 j2 b* X% f
第一步:将表格中的班次ID文本相同的内容用相同序号代替$ J4 G* D6 ]6 s4 m$ i
            将表格中替换成这样
9 W; Q( C# ]) C& Y; z# v8 u! A
7 o. p) E% Q. Y. _3 z9 i第二部:将表格都框住,选择插入数据透视表,按你的要求,将行标签选择为员工姓名,列标签选择为日期,讲班次ID选择为数值且数值为求和项(其实最大值最小值也可以)这样数据透视表就回自动透视成:8 w! ~" \6 b. \3 y% q, A7 Q
第三部,将整个数据透视表选择性粘贴只保留数值复制到新表中,然后将里面的班次ID序号按第一步中那样替换成回文字就可以了。, C; p. t4 \3 [, _: B3 m
说明:这个方法关键在于数据透视表不能对文本内容进行透视输出,所以将需要透视的内容即你的班次ID相同的替换成1个序号,进行编号,这样透视表就能生成,最后再将这些序号替换回文本就行了。
. x# Z, M* x  x( Z
) m) D* t/ n  O) ]8 R其实,还是你原表中的IF+VLOOKUP公式最方便,但是不知道为什么只能在第一列公式有效,更改到第二列就无效了,我看了下 是两张表员工姓名不一致IF公式判断为FALSE的,我将表1的员工姓名复制到表二中并该为常规格式也没用,搞不懂了。。。。。。。只能舍近求远的用数据透视表了。   如果还有问题 可以加我Q34282939讨论讨论

9 d! E' ~4 r2 T$ z7 i  |3 l: m( J6 f- N: X3 N4 h

* r9 v) B! B" Q( S+ Q: q
: \0 ]) d$ ~! X5 H9 A9 h5 D# g4 f5 N

本帖子中包含更多资源

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

回复

使用道具 举报

o圆o    

6

主题

5

听众

810

积分

秀才

Rank: 5Rank: 5

签到天数: 34 天

[LV.5]常住居民I

注册时间
2011-8-11
最后登录
2012-9-28
积分
810
精华
0
主题
6
帖子
54
5
发表于 2012-7-29 22:14:23 |只看该作者 |楼主
和闲 发表于 2012-7-29 01:00 ( W+ m9 O' N3 \, Q! Q+ E
不知道怎么回事,我重新设计个表格按你这个公式来说都是可以的。
0 I! \# x5 C8 N' O2 J$ `: L2 y  L: H( e8 }- i8 e* E: p
不过我找到了另外一种方法, ...
) [& @: R  P" a( y3 H# _, b- l
谢谢!因数据涉及较多,恐这种方法还是工作量有点大。
坚持!还是坚持!
回复

使用道具 举报

54

主题

36

听众

6398

积分

版主

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

签到天数: 35 天

[LV.5]常住居民I

注册时间
2008-11-21
最后登录
2016-11-3
积分
6398
精华
7
主题
54
帖子
578
6
发表于 2012-7-30 10:03:25 |只看该作者
本帖最后由 和闲 于 2012-7-30 10:31 编辑 $ S0 D' r3 m0 C0 e  r1 e
o圆o 发表于 2012-7-29 22:14
; [1 N. g' Y. S" \  P5 ], e! k谢谢!因数据涉及较多,恐这种方法还是工作量有点大。
* f( P. n( h4 R9 i0 H
哈哈 研究好了 VLOOKup双条件输出+ Q" j& n! \- f" U& g* `
用这个公式=VLOOKUP($C$1&A3,IF({1,0},Sheet1!A:A&Sheet1!B:B,Sheet1!D: D),2,)   3 Y7 {; }0 c  _! B4 q5 R0 L! s7 |

! ~& |% @( H2 M4 X; v8 b因为帖子中一打冒号D就变成 了,我冒号后加了空格,记得删除空格
6 t8 v. q! m9 I  A/ N5 q9 j记得公式输完后不能直接回车Shift+Ctrl+Enter 三个键一起按下去(重要)。
3 ]* @; @, `4 W2 Z$ p! ]! l
3 [7 V7 J: b/ }8 @/ Y5 c他的意思是  当sheet2中 $c$1(职工名称固定死了,换列的时候记得更换)和A3 分别与shee1中的A列和B列相同的时候,输出sheet1中D列的内容(即你需要的班次ID),另外SHEE1!A:A等几个范围选取的是列,换个人的时候公式会变化,记得更正,或者改为用shee1!$a$1:shee1!$a$1000000等 固定单元格范围
0 A  w' N% Z0 y9 S
- i1 k, }% I9 I1 M4 ^0 b1 x5 S切记:公式输完后不要回车,三个键同时按下去!. S* ^( ]3 `% J- K; I9 H

) w1 i$ b4 B9 Q% Z% g, @
回复

使用道具 举报

o圆o    

6

主题

5

听众

810

积分

秀才

Rank: 5Rank: 5

签到天数: 34 天

[LV.5]常住居民I

注册时间
2011-8-11
最后登录
2012-9-28
积分
810
精华
0
主题
6
帖子
54
7
发表于 2012-7-30 19:34:35 |只看该作者 |楼主
和闲 发表于 2012-7-30 10:03 : z1 n# c" S$ H7 X
哈哈 研究好了 VLOOKup双条件输出. B+ Y6 [  f+ ^* `
用这个公式=VLOOKUP($C$1&A3,IF({1,0},Sheet1!A:A&Sheet1!B:B,Sheet1!D: ...
+ K) l5 {7 A  s+ t
太牛了,万分感谢!
坚持!还是坚持!
回复

使用道具 举报

1

主题

4

听众

1174

积分

秀才

Rank: 5Rank: 5

签到天数: 67 天

[LV.6]常住居民II

注册时间
2009-12-10
最后登录
2013-10-15
积分
1174
精华
0
主题
1
帖子
116
8
发表于 2012-8-1 10:29:45 |只看该作者
VLOOKUP函数的功能好强大
回复

使用道具 举报

2

主题

7

听众

2114

积分

举人

Rank: 8Rank: 8

签到天数: 134 天

[LV.7]常住居民III

注册时间
2012-4-25
最后登录
2014-4-29
积分
2114
精华
0
主题
2
帖子
220
9
发表于 2012-8-1 12:03:02 |只看该作者
好厉害啊 EXCEL高手啊
回复

使用道具 举报

54

主题

36

听众

6398

积分

版主

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

签到天数: 35 天

[LV.5]常住居民I

注册时间
2008-11-21
最后登录
2016-11-3
积分
6398
精华
7
主题
54
帖子
578
10
发表于 2012-8-1 19:39:47 |只看该作者
pcxsunshine 发表于 2012-8-1 10:29
- D1 Y4 x6 p6 qVLOOKUP函数的功能好强大

3 R& ?9 R  r, F所以要好好学学的呢  确实用处很大
回复

使用道具 举报

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