ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: lhx120824

[分享] 教育应用贴(分班、统计、课表等)1142楼添加运动会成绩统计表20121215

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2011-1-4 16:47 | 显示全部楼层
谢谢帮忙。我也试过但没成功。我用的是 vlookup.

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-4 16:50 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
用名称
座号:
=MMULT(ROW(考生!$1:$130)+130*(COLUMN(考生!$A:$C)-1),1*(ROW(考生!$1:$3)=INT(TRANSPOSE((ROW(考生!$1:$15)-1)/5)+1)))

和一个公式:
=IFERROR(CHOOSE(MOD(TRANSPOSE(ROW(1:15)-1),5)+1,座号,VLOOKUP(座号,考生!A:D,2,0),VLOOKUP(座号,考生!A:D,3,0),VLOOKUP(座号,考生!A:D,4,0)),"")
即可解决。分栏中的成绩有考生表中查找得出,不用再填。
登分表.gif

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-4 16:52 | 显示全部楼层
看附件:
高二文登分册.rar (40.56 KB, 下载次数: 125)

表中的格式:行高、列宽、颜色、字体等你可以自己再调。
看符合你的要求吧?

[ 本帖最后由 lhx120824 于 2011-1-4 16:57 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-4 17:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 fyj7601 于 2011-1-4 16:47 发表
谢谢帮忙。我也试过但没成功。我用的是 vlookup.

这个问题的解决需要综合性的知识,要会用函数CHOOSE( )、MMULT( ) 、1*(ROW(1:3)=INT(TRANSPOSE((ROW(1:12)-1)/4)+1))、……
要会数组的扩展和并联,如果要把标题也用公式产生的的话,就要用数组的串接,慢慢学吧。excel真是无比深广。

TA的精华主题

TA的得分主题

发表于 2011-1-4 18:12 | 显示全部楼层
我这个登分册是分三页来打印的。第一页为考号1-155,第二页考号。为155-326,剩下的为第三页。当然每页考生人数可以改动。也就是每一页都按照这种格式来排。请大师指教。

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-4 22:02 | 显示全部楼层
原帖由 fyj7601 于 2011-1-4 18:12 发表
我这个登分册是分三页来打印的。第一页为考号1-155,第二页考号。为155-326,剩下的为第三页。当然每页考生人数可以改动。也就是每一页都按照这种格式来排。请大师指教。

一张表并不只是打印一页,你适当的调整每栏的行高和列宽,使之差不多成一页的大小,然后选定其中的一栏,打印选定内容即可实现你的想法,只要你调整的合适,就可实现一栏打印页的效果。可使用页面预览下的调整。其余的你试着慢慢去做。主要是学习方法。


要想每页打印155行,就把定义中的座号中的
=MMULT(ROW(考生!$1:$130)+130*(COLUMN(考生!$A:$C)-1),1*(ROW(考生!$1:$3)=INT(TRANSPOSE((ROW(考生!$1:$15)-1)/5)+1)))
改为
=MMULT(ROW(考生!$1:$155)+155*(COLUMN(考生!$A:$C)-1),1*(ROW(考生!$1:$3)=INT(TRANSPOSE((ROW(考生!$1:$15)-1)/5)+1)))
输入公式前选定的区域应该是至少155行,15列(5*3),其中的第五、十列为间隔列(当然其中含有公式),可设置格式效果。调整行高列宽和字体大小是为了使每栏能在一页上打印,这需要你自己试着调。

[ 本帖最后由 lhx120824 于 2011-1-4 22:13 编辑 ]

TA的精华主题

TA的得分主题

发表于 2011-1-4 22:41 | 显示全部楼层
亲爱的楼主:
     
     现在我有一个想要做的东西,可是不知道要怎么才能实现。望指教!

     现在我有很多班级的调课信息。具体内容为某班级**时候的课暂停,调至**时候补回。可是该班的调课不一定只有一次,那么我查询起来的时候只能说“查询—查找全部”虽然这方法也是能查到我想要的东西,可是看起来太不明了。所以就像能否把所有的调课信息都记在同一sheet作为数据源,在另一sheet设置搜索功能,输入要搜索的班级,便把该班级的相关调课信息统一全部显示出来呢?

     具体例子见附件。盼楼主回复!

查询例子.rar

7.25 KB, 下载次数: 77

TA的精华主题

TA的得分主题

发表于 2011-1-4 22:43 | 显示全部楼层
这贴真不错,好好研究一下,都懂了就是个excel高手。

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-4 22:48 | 显示全部楼层
需要把座号改为:
=MMULT(ROW(!$1:$52)+52*(COLUMN(!$A:$I)-1),1*(ROW(!$1:$9)=INT(TRANSPOSE((ROW(!$1:$45)-1)/5)+1)))
既然打印用,色彩就不要了,A4纸张分三页打印已做好。不过每页是156人,分三栏。共三页。
A4纸分三页打印.rar (51.65 KB, 下载次数: 128)

分三栏打印.gif

[ 本帖最后由 lhx120824 于 2011-1-4 23:09 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2011-1-4 23:19 | 显示全部楼层
行列的多少有具体的座号公式
=MMULT(ROW(!$1:$52)+52*(COLUMN(!$A:$I)-1),1*(ROW(!$1:$9)=INT(TRANSPOSE((ROW(!$1:$45)-1)/5)+1)))
中的行列数据来确定。
其中的52是有52行,45是共有45列,分9栏,每栏5列,每栏包括1个空列。
52行45列的区域选定后在编辑栏中输入一个公式
=IFERROR(CHOOSE(MOD(TRANSPOSE(ROW(1:45)-1),5)+1,座号,VLOOKUP(座号,考生!A:D,2,0),VLOOKUP(座号,考生!A:D,3,0),VLOOKUP(座号,考生!A:D,4,0)),"")
按数组的三键结束。
即整个52*45的区域只用一个多单元格数组公式。

自己可根据需要调整座号中的行列数据。

[ 本帖最后由 lhx120824 于 2011-1-4 23:20 编辑 ]
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-25 22:32 , Processed in 0.039175 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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