ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 6608|回复: 27

[Excel 函数与公式] 【65期】按要求制作打印表格 [已结束]

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-8-28 09:47 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
题目A1:B101为数据区域,A列为小学生报名的序列号,B列为相应的初中录取学校,数据按A列报名号排序,答案区域E至H列
现在要将这个表格打印,发给各个初中学校,为了节省纸张,分开两列打印,已知一张纸上能打印20个学生,为了好校对现要求如下
要求
1.一张纸上的顺序,是按报名号,从上到下,再从上到下,也就是10连续,第二列接着第一列,第二张纸第一列接着第一张纸的第二列继续打印
2.为了一个学校能够拿到完整的信息,比如这个学校为22个人,那么打印两张纸,第二张纸只有两个学生,其余空白
3.具体显示如左侧结果所示,题头已经给出(小学报名序号,初中录取学校),只要填入相关正确的学生信息
4.表格打印顺序按录取学校顺序,颜色已标出,即甲乙丙丁戊顺序
5.用一个公式右下拉完成,不准用vba,自定义名称,不使用辅助列,表格中出现的可以使用。
6.所有初中学校都会出现,不会出现那所学校没人的情况。
评分方法
1.只要字符不超过400个,得3个技术分,50财富
2.在答题期间,无答案占楼层者,进行处罚。
3.希望题目大家能够自己完成,为公平起见,如发现私下要答案者,一经发现,作弊双方都扣除5个技术分,技术分不够者,扣除财富。

此题个人认为不是很浅,所以在字符上放宽要求,主要看答题者思路。
答题截止时间为9月22日,之后答复者不给予评分。
题目可能考虑不周,有问题处请大家及时通知,本人进行改正。



[ 本帖最后由 dul 于 2010-9-30 15:59 编辑 ]

本帖子中包含更多资源

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

x

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-8-29 00:47 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
计算等号396字符
E2公式:=OFFSET($A$1,SMALL(IF($B$2:$B$101=INDEX($C:$C,SMALL(IF(COLUMN(1:1)>CEILING(COUNTIF($B:$B,$C$2:$C$6)/2,10),9,ROW($2:$6)),ROW()-1)),ROW($1:$100),999),(FLOOR(ROW()-2,10)+(COLUMN()>6)*5-MOD(SMALL(IF(COLUMN(1:1)>CEILING(COUNTIF($B:$B,$C$2:$C$6)/2,10),999,ROW($1:$5)/1%+MMULT(N(ROW($2:$6)>COLUMN($A:$E)),CEILING(COUNTIF($B:$B,$C$1:$C$5)/2,10))),ROW()-1),100))*2+MOD(ROW()-2,10)+1),MOD(COLUMN()-1,2))&""

本帖子中包含更多资源

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

x

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-8-29 20:37 | 显示全部楼层
359字符,数组公式如下:
=INDEX(OFFSET($A:$A,,MATCH(E$1,$1:$1,)-1),SMALL(IF($B$2:$B$101=LOOKUP(ROW()-2,MMULT(N(ROW($1:$6)>=COLUMN($A:$F)),FLOOR(COUNTIF($B:$B,$C$1:$C$6),10)),$C$2:$C$7),ROW($2:$101),4^8),MOD(ROW()-2+10*INT((ROW()-2)/10)+IF(COLUMN()>6,10,),LOOKUP(ROW()-2,MMULT(N(ROW($1:$5)>={1,2,3,4,5}),FLOOR(COUNTIF($B:$B,$C$1:$C$5),10)),CEILING(COUNTIF($B:$B,$C$2:$C$6),20)))+1))&""
在B2:B31为丙时,看看结果就知道原因了,可惜了。无法得分。

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

TA的精华主题

TA的得分主题

发表于 2010-8-31 08:00 | 显示全部楼层
看是400字符 对我来说 这个定位 极其精准的数据了
想了好久好久 才不超400(以我目前的思路)

397字符
E2
=OFFSET($A$1,SMALL(IF($B$2:$B$998=OFFSET($C$2,SUM(--(ROW()-1>MMULT(N(ROW($2:$6)>{1,2,3,4,5}),ROUNDUP(COUNTIF($B$2:$B$998,$C$2:$C$6)/20,)*10))),),ROW($2:$998),999),(INT((ROW()-2)/10)+(COLUMN()>6))*10+ROW()-1-SUM((ROW($1:$5)<SUM(--(ROW()-1>MMULT(N(ROW($2:$6)>{1,2,3,4,5}),ROUNDUP(COUNTIF($B$2:$B$998,$C$2:$C$6)/20,)*10)))+1)*ROUNDUP(COUNTIF($B$2:$B$998,$C$2:$C$6)/20,)*10)*2)-1,MOD(COLUMN()-1,2))&""



[ 本帖最后由 泓() 于 2010-8-31 09:29 编辑 ]

本帖子中包含更多资源

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

x

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-8-31 09:47 | 显示全部楼层
老师出题,支持学习。




=OFFSET($A$1,RIGHT(SMALL(IF({1,0},MATCH($B$2:$B$101,$C:$C,),SMALL(7.1-(COLUMN($A:$T)<=CEILING(COUNTIF($B:$B,$C$2:$C$6),20)-COUNTIF($B:$B,$C$2:$C$6))*{5;4;3;2;1},ROW($1:$100)))/1%%+ROW($1:$100),ROW()+INT(ROW(A10)/10+INT(COLUMN(B1)/2))*10-21),4),MOD(COLUMN(B1),2))&""
===========================================================================================
=OFFSET($A$1,RIGHT(SMALL(IF({1,0},MATCH($B$2:$B$101,$C:$C,),SMALL(7.1-(COLUMN($A:$T)<=MOD(20-MOD(COUNTIF($B:$B,$C$2:$C$6),20),20))*{5;4;3;2;1},ROW($1:$100)))/1%%+ROW($1:$100),ROW()+INT(ROW(A10)/10+INT(COLUMN(B1)/2))*10-21),4),MOD(COLUMN(B1),2))&""

[ 本帖最后由 wangg913 于 2010-9-9 08:48 编辑 ]

本帖子中包含更多资源

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

x

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-9-1 10:10 | 显示全部楼层
建议竞赛题评分标准是否按字元数分档评分,好让多一点初学者参与!
        本人对以下操作定义名词:第1部分:自动分页(每10行为1页);第2部分:自动分节(每1个学校名为1节);第3部分:强制隔列分栏
    经过三次编辑更改最终结果如下
1、不使用表格中C2:C6学校名称数组公式为:(字元数389)
E2=OFFSET($A$1,SMALL(IF($B$2:$B$150=LOOKUP(ROW()-2,MMULT(10*(ROW($1:$5)>=COLUMN($B:$F)),ROUNDUP(COUNTIF($B$2:$B$150,{"甲";"乙";"丙";"丁";"戊"})/20,)),{"甲";"乙";"丙";"丁";"戊"}),ROW($B$2:$B$150),4^8),ROW(A1)+(INT((ROW()-2)/10)+INT(COLUMN(A:A)/3))*10+LOOKUP(ROW()-2,MMULT(MMULT(10*(ROW($1:$5)>=COLUMN($B:$F)),ROUNDUP(COUNTIF($B$2:$B$150,{"甲";"乙";"丙";"丁";"戊"})/20,)),{1,-2})))-1,MOD(COLUMN(A:A)-1,2))&""
2、使用表格中C2:C6学校名称数组公式为:(字元数353)
E2=OFFSET($A$1,SMALL(IF($B$2:$B$150=LOOKUP(ROW()-2,MMULT(10*(ROW($1:$5)>=COLUMN($B:$F)),ROUNDUP(COUNTIF($B$2:$B$150,$C$2:$C$6)/20,)),$C$2:$C$6),ROW($B$2:$B$150),4^8),ROW(A1)+(INT((ROW()-2)/10)+INT(COLUMN(A:A)/3))*10+LOOKUP(ROW()-2,MMULT(MMULT(10*(ROW($1:$5)>=COLUMN($B:$F)),ROUNDUP(COUNTIF($B$2:$B$150,$C$2:$C$6)/20,)),{1,-2})))-1,MOD(COLUMN(A:A)-1,2))&""

[ 本帖最后由 fugb-2010 于 2010-9-6 08:15 编辑 ]

本帖子中包含更多资源

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

x

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-9-2 14:19 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
在E2输入公式
=OFFSET($A$1,SMALL(IF(LOOKUP(ROW()-1.5,MMULT(N(ROW($1:$5)>COLUMN($A:$E)),CEILING(COUNTIF($B$2:$B$101,$C$2:$C$6),20))/2,$C$2:$C$6)=$B$2:$B$101,ROW($1:$100),999),CEILING(ROW()-1,10)-(COLUMN()<7)*10+ROW()-1-LOOKUP(2*ROW()-3.5,MMULT(N(ROW($1:$5)>COLUMN($A:$E)),CEILING(COUNTIF($B$2:$B$101,$C$2:$C$6),20)))),MOD(COLUMN()-1,2))&""

右拉下拉
============================================================================================
=OFFSET($A$1,SMALL(IF(LOOKUP(ROW()-2,MMULT(N(ROW($1:$5)>{1,2,3,4,5}),CEILING(COUNTIF($B$2:$B$101,$C$2:$C$6),20))/2,$C$2:$C$6)=$B$2:$B$101,ROW($1:$100),999),CEILING(ROW()-1,10)-(COLUMN()<7)*10+ROW()-1-LOOKUP(2*ROW()-4,MMULT(N(ROW($1:$5)>{1,2,3,4,5}),CEILING(COUNTIF($B$2:$B$101,$C$2:$C$6),20)))),MOD(COLUMN()-1,2))&""
共计316字符

[ 本帖最后由 sunbin200388 于 2010-9-7 13:08 编辑 ]

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-9-2 21:34 | 显示全部楼层

本帖子中包含更多资源

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

x

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-9-6 00:49 | 显示全部楼层
E2=INDEX($A:$B,RIGHT(SMALL(IF($B$2:$B$101=TRANSPOSE($C$1:$C$99),ROW($2:$101),999)+1000*COLUMN($A:$CU),FLOOR(ROW(A1)-1,10)+ROW(A1)+(COLUMN(A1)>2)*10+LOOKUP(FLOOR(ROW(A1)-1,10)+ROW(A1)+(COLUMN(A1)>2)*10-1,MMULT(N(ROW($1:$6)>=COLUMN($A:$F)),CEILING(COUNTIF($B:$B,$C$1:$C$6),20)),ROW($C$1:$C$6)*100-MMULT(N(ROW($1:$6)>=COLUMN($A:$F)),CEILING(COUNTIF($B:$B,$C$1:$C$6),20)))),3),2-MOD(COLUMN(A1),2))&""

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2010-9-7 00:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
最先思路
526字元
E2=OFFSET($A$1,IF(ISNA(MATCH(ROW(A1)+(COLUMN()>6)*10+10*INT((ROW()-2)/10),MMULT(--($B$2:$B$101=TRANSPOSE($B$2:$B$101))*(COLUMN($B:$CW)<=ROW($2:$101)),ROW($2:$101)^0)+MMULT(--(COLUMN($A:$E)<MATCH($B$2:$B$101,$C$2:$C$6,)),--CEILING(COUNTIF($B:$B,$C$2:$C$6),20)),)),101,MATCH(ROW(A1)+(COLUMN()>6)*10+10*INT((ROW()-2)/10),MMULT(--($B$2:$B$101=TRANSPOSE($B$2:$B$101))*(COLUMN($B:$CW)<=ROW($2:$101)),ROW($2:$101)^0)+MMULT(--(COLUMN($A:$E)<MATCH($B$2:$B$101,$C$2:$C$6,)),--CEILING(COUNTIF($B:$B,$C$2:$C$6),20)),)),MOD(COLUMN(B1),2))&""

数组 右拉下拉

簡化一
322字元
E2=OFFSET($A$1,MATCH(ROW(A1)+(COLUMN()>6)*10+10*INT((ROW()-2)/10),MMULT(--($B$2:$B$299=TRANSPOSE($B$2:$B$299))*(TRANSPOSE(ROW($2:$299))<=ROW($2:$299)),ROW(2:299)^0)+MMULT(--(COLUMN($A:$E)<IF(ISNA(MATCH($B$2:$B$299,$C$2:$C$6,)),1,MATCH($B$2:$B$299,$C$2:$C$6,))),--CEILING(COUNTIF($B:$B,$C$2:$C$6),20)),),MOD(COLUMN(B1),2))&""

數組 右拉下拉

簡化二
294字元
E2=OFFSET($B$1,MATCH(ROW(A1)+(COLUMN()>6)*10+10*INT((ROW()-2)/10),MMULT(-({1,2,3,4,5}<IF($B$2:$B$350="",,MATCH($B$2:$B$350,$C$2:$C$6,))),-CEILING(COUNTIF($B:$B,$C$2:$C$6),20))-MMULT(-($B$2:$B$350=TRANSPOSE($B$2:$B$350))*(TRANSPOSE(ROW($2:$350))<=ROW($2:$350)),ROW(2:350)^0),),-MOD(COLUMN(),2))&""
數組 右拉下拉

[ 本帖最后由 piny 于 2010-9-20 09:52 编辑 ]

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

本版积分规则

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

GMT+8, 2024-4-27 11:50 , Processed in 0.041307 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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