excel对数据按要求进行分组?
答案:3 悬赏:70
解决时间 2021-03-02 15:08
- 提问者网友:喜遇你
- 2021-03-01 17:48
例如:1000个学生平均分成20各班,要求男女同学平均分配到各班。若是男人有800多人,女生只有100多,还怎么平均分配呀?
最佳答案
- 二级知识专家网友:陪伴是最长情的告白
- 2021-03-01 18:47
假设学生姓名在A列、性别在B列。就在C1输入抄
=COUNTIF(B$1:B1,B1)回车并向下填充
点C列任一格——工具栏——升序排序
这样就把男女学生间隔开来
再于D1输入
=CEILING(ROW()/50,1)回车并向下填充
就分袭开1、2、3、……各班了。
回答百者: Stcxj - 十五级 2010-8-6 14:03
补充了:
“男人有800多人,女生只有100多”,当然平均分配不了。
在C1输入
=IF(B1="男",CEILING(COUNTIF(B$1:B1,B1)/(COUNTIF(B:B,"男")/20),1),CEILING(COUNTIF(B$1:B1,B1)/(COUNTIF(B:B,"女")/20),1))
回车并向下填充
点C列任一格——工具栏——升序排序
也一度样分开1、2、3、……20班了。
=COUNTIF(B$1:B1,B1)回车并向下填充
点C列任一格——工具栏——升序排序
这样就把男女学生间隔开来
再于D1输入
=CEILING(ROW()/50,1)回车并向下填充
就分袭开1、2、3、……各班了。
回答百者: Stcxj - 十五级 2010-8-6 14:03
补充了:
“男人有800多人,女生只有100多”,当然平均分配不了。
在C1输入
=IF(B1="男",CEILING(COUNTIF(B$1:B1,B1)/(COUNTIF(B:B,"男")/20),1),CEILING(COUNTIF(B$1:B1,B1)/(COUNTIF(B:B,"女")/20),1))
回车并向下填充
点C列任一格——工具栏——升序排序
也一度样分开1、2、3、……20班了。
全部回答
- 1楼网友:说多了都是废话
- 2021-03-01 20:46
用vba的代码你可以参考一下
不过要把数据横向放到单元格中(代码是建立在数据放在b1:n1单元格中的)
sub 分组()
dim arr
arr = range("b1:n1")
a = application.min(arr)
b = application.max(arr)
c = a - right(a, 1) '下限
d = b - right(b, 1) + 9 '上限
f = 2
for e = c to d step 10
cells(f, 1) = e & "-" & e + 9
f = f + 1
next e
for g = 1 to ubound(arr, 2)
差 = arr(1, g) - c
商 = int(差 / 10)
余 = arr(1, g) mod 10'这句多余了
cells(2 + 商, 55).end(xltoleft).offset(0, 1) = arr(1, g)
next
end sub
- 2楼网友:冷态度
- 2021-03-01 19:46
按性别排个序,把女的那组放在表二吧
看看表二,表二个数/20=b取整,表一个数/20=a取整。
一个班有b个女生加a个男生啊
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯