Excel人员随机分组和排班怎么操作?快速处理技巧

霞舞

霞舞

2026-07-14

782人浏览

原创

excel做人员随机分组、排班,最省心的方法就是先给每个人生成一个专属随机数,按这个数排序之后,直接把排好的名单按人数拆成小组,后续就能直接往排班表里填。当前操作软件:microsoft excel;软件版本:microsoft 365。里面用到的动态数组函数效率更高,如果使用 wps 或旧版 excel,需要先确认是否支持对应函数。

别上来就手动抽签凑名单,人数超过十几个之后,手拖鼠标选人很容易重复、漏人,之后临时要调班也找不到原始记录溯源。下面我们拿「12人客服组,每3人分一组,再对应排早中晚班」当例子演示,你实际用的时候只要改公式里的分组人数、提前准备好自己的班次清单就行。

第一步:在名单旁边生成随机数

先把所有员工姓名整理在同一列,比如A列放姓名,B列表头填「随机数」。在B2单元格输入 =RAND(),往下拉填充到最后一名员工那行,等每行都出现一个不一样的小数,就相当于每个人都拿到了一个临时抽签号。

Excel名单旁新增随机数列并输入RAND函数

RAND 函数写法很简单:

函数 语法 返回结果 适合用途
RAND =RAND() 0 到 1 之间的小数 给名单生成随机排序依据

这个函数不需要填任何参数,后面的括号也不能省。只要工作表触发重新计算,所有随机数就会自动刷新变化;要是已经确定好抽签结果,得先把随机数整列复制出来,用「选择性粘贴」转成纯数值,不然后面分组结果会跟着乱跳。

第二步:按随机数升序排序

选中姓名列和随机数列,千万别只选随机数那一列。点开顶部「数据」选项卡的排序功能,排序依据选「随机数」,次序设为升序。排序完成后,姓名的原有顺序就被打乱了,但每个人的信息还是和自己的随机数留在同一行。

Excel按随机数列升序排序打乱员工名单

如果排完发现姓名和随机数错位,基本都是之前选选区的时候只框了一列。碰到这种情况直接点撤销,把姓名、部门、岗位、随机数所有相关列一起选中,再重新排序就行。后面排班要用到岗位、部门字段的,排序的时候也得把这些列一起带上。

Python对Excel操作详解 中文WORD版
Python对Excel操作详解 中文WORD版

本文档主要介绍如何通过python对office excel进行读写操作,使用了xlrd、xlwt和xlutils模块。另外还演示了如何通过Tcl tcom包对excel操作。感兴趣的朋友可以过来看看

下载

第三步:给排序后的名单自动分组

排好序的名单可以按固定人数直接切分小组。比如每3人一组,在C2单元格输入 =ROUNDUP(ROW(A1)/3,0) 再向下填充,就会自动生成1、1、1、2、2、2这样的组号。想要把组号显示成A、B、C、D这类自定义名称,可以先在空白区域比如E2:E5写好组名清单,再用公式 =INDEX($E$2:$E$5,ROUNDUP(RANK(B2,$B$2:$B$13)/3,0)) 直接根据随机数排名返回对应的组名。

Excel用INDEX和ROUNDUP按随机排名分配小组
函数 语法 关键参数 在分组中的作用
ROUNDUP =ROUNDUP(number,num_digits) number 是要向上取整的数;num_digits 为 0 时取整数 把第 1 到第 3 名归到第 1 组,第 4 到第 6 名归到第 2 组
RANK =RANK(number,ref,[order]) number 是当前随机数;ref 是随机数区域;order 省略时按从大到小排名 根据随机数算出每个人的抽签名次
INDEX =INDEX(array,row_num,[column_num]) array 是组名清单;row_num 是要返回第几个组名 把数字组号转换成 A、B、C、D 等名称

要是只想快速把名单平均分成4组,也可以用动态数组的简化写法:=WRAPROWS(SORTBY(A2:A13,RANDARRAY(ROWS(A2:A13))),3)。这里面 SORTBY 负责按生成的随机数组打乱排序,RANDARRAY 负责生成和名单行数一样多的随机数,WRAPROWS 负责每凑够3个姓名就自动换到下一行。这个写法出结果很快,但后续要补录部门、岗位、班次这类信息的时候,用传统辅助列的方式更容易核对排查。

第四步:把分组结果填入排班表

分组结果定下来之后,排班的时候就别再重新跑一次随机了。直接把每组成员复制到排班表对应的日期和班次栏里就行,比如A组排早班、B组排中班、C组排晚班,D组留作休息或者机动备用。之后需要轮班调整的时候,只改班次对应关系就行,别动最开始生成的那份原始随机名单,这样能保留第一次分组的完整依据。

Excel排班表中按随机分组填入早班中班晚班

排班也可以直接用公式自动取人。假设A2:A13是已经排好随机顺序的员工姓名,F2:H5是班次表,早班第一个单元格可以写 =INDEX($A$2:$A$13,ROW(A1)),往下拉就能取到前三个人;中班第一个单元格写 =INDEX($A$2:$A$13,ROW(A1)+3),晚班第一个单元格写 =INDEX($A$2:$A$13,ROW(A1)+6)。要是想实现每天自动轮换班次,可以把偏移量改成 MOD 计算,比如 =INDEX($A$2:$A$13,MOD(ROW(A1)+COLUMN(A1)*3-1,ROWS($A$2:$A$13))+1),向右拉填充之后就会按列错开自动取人。

这个操作最常踩的坑有三个:第一是RAND函数自动重算导致名单全变,抽完结果一定要先粘贴成数值锁定;第二是排序的时候只选了随机数列,把员工的对应信息全弄散了;第三是改分组人数之后,忘了同步改公式里的除数。处理排班的时候,建议单独存一张「原始名单」工作表,所有操作都在「随机分组」和「排班结果」两张表里做,后续要调班或者复盘的时候,记录全不会乱。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
excel对比两列数据异同
excel对比两列数据异同

Excel作为数据的小型载体,在日常工作中经常会遇到需要核对两列数据的情况,本专题为大家提供excel对比两列数据异同相关的文章,大家可以免费体验。

2023.07.25

2869

7

excel重复项筛选标色
excel重复项筛选标色

excel的重复项筛选标色功能使我们能够快速找到和处理数据中的重复值。本专题为大家提供excel重复项筛选标色的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.31

1479

5

excel复制表格怎么复制出来和原来一样大
excel复制表格怎么复制出来和原来一样大

本专题为大家带来excel复制表格怎么复制出来和原来一样大相关文章,帮助大家解决问题。

2023.08.02

1408

3

excel表格斜线一分为二
excel表格斜线一分为二

在Excel表格中,我们可以使用斜线将单元格一分为二。本专题为大家带来excel表格斜线一分为二怎么弄的相关文章,希望可以帮到大家。

2023.08.02

1343

3

excel斜线表头一分为二
excel斜线表头一分为二

excel斜线表头一分为二的方法有使用合并单元格功能方法、使用文本框功能方法、使用自定义格式方法。本专题为大家提供excel斜线表头一分为二相关的各种文章、以及下载和课程。

2023.08.02

532

5

绝对引用的输入方法
绝对引用的输入方法

绝对引用允许在公式中引用一个固定的单元格,而不会随着公式的复制和粘贴而改变引用的单元格。本专题为大家提供绝对引用相关内容的文章,大家可以免费体验。

2023.08.09

4959

7

java导出excel
java导出excel

在Java中,我们可以使用Apache POI库来导出Excel文件。本专题提供java导出excel的相关文章,大家可以免费体验。

2023.08.18

2587

6

excel输入值非法
excel输入值非法

在Excel中,当输入的数值非法时,有以下多种处理方法。本专题为大家提供excel输入值非法的相关文章,大家可以免费体验。

2023.08.18

1239

3

excel生成二维码
excel生成二维码

虽然Excel本身并不直接支持生成二维码,但我们可以借助一些插件或宏来实现在Excel中生成二维码的功能。本专题为大家提供excel生成二维码的相关文章。

2023.08.18

1287

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 39.5万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 3.2万人学习