教师工作量统计:有点晕!我要这样做,四级嵌套字典,逐级拼接成一个字符串,设置单元格内指定文本的格式

文摘   教育   2024-10-05 23:37   江苏  

点【关于本公众号】了解一下,欢迎关注谢谢!

快速浏览

实用案例

|日期控件||简单的收发存||收费管理系(Access改进版)|

|电子发票管理助手||电子发票登记系统(Access版)|

|文件合并||表格拆分||审计凭证抽查底稿|

|中医诊所收费系统(Excel版)||中医诊所收费系统(Access版)||银行对账单自动勾对|

|印章使用登记系统|

收费使用项目

|财务管理系统||工资薪金和年终奖个税筹划||新税法下工资表模版|

内容提要

  • 教师工作量统计
  • 四级嵌套字典
  • 单元格内部指定文本设置格式
大家好,我是冷水泡茶,昨天在论坛上看到一个求助贴:[求助] 烦请高手修改教师工作量统计的VBA代码
具体需求:

烦请高手修改附件里的VBA代码,图1是VBA生成的结果(“教师工作量”工作表的B列是教师的任教班级和科目数量);图2是我想要生成的结果的示例,在“教师工作量”工作表的B列“班级和科目数”和B列C列之间插入一列“任教班级和科目明细”,示例是我手工输入的,任教班级和科目明细是将“教师课时统计”工作表的A列、C列、D列、E列、F列的数据(图3红色内容)进行汇总统计,其他的不要修改!操作文件见附件!

https://club.excelhome.net/thread-1702128-1-1.html?_dsign=c003582f

关于学校排课表的案例,我们最近分享过几个,可能都有点审美疲劳了,不过呢,虽然有相似的地方,但是侧重点各不相同,从学习VBA方面来说,还是值得研究研究的:

学校排课表:根据总课表统计教师任课表、班级任课表

学校课表:根据总课表生成教师课表、班级课表,一键打印、选择打印

学校课表(更新):ComboBox代替数据验证,相同单元格标色高亮显示;根据总课表生成教师课表、班级课表,一键打印

我们先看一下数据表格,
1、教师安排表
2、课时安排表,每个年级各个科目的课时数量,还有一个“折算系数”,有点新鲜 
3、教师工作量,他原来已经能够统计相关数据,但是还想要一个“任教班级和科目明细”,数据来自“教师课时统计”
4、教师课时统计,每个教师、每个班级、每个学科的课时明细数据,原来需求中是根据这张表来统计“教师工作量”的,但今天我们不用这张表。
需求分析:

1、我们来看“教师工作量”表的格式:

(1)教师姓名:可以使用字典从“教师安排表”中取得不重复的教师姓名。

(2)班级科目数:这个实际上就是教师姓名在“教师安排表”中出现的次数,用字典计数。

(3)任教班级和科目明细:这个是最大的难点,需要把每个教师对应的年级、班级、科目、课时连接成字符串。

(4)周课时量:这个要结合“课时安排表”中的周课时数来计算。

(5)折算的周课时量:这个要结合“课时安排表”中的折算系数来计算

2、我们要设置多个字典,包括多级嵌套字典。

基本思路:

1、我们设置4个字典:

(1)dic1:班级科目数,教师为key,item为累计计数。

(2)dic2:多级嵌套,教师-年级-班级-科目,这些是各级key,item为一个2个元素的数组,存放周课时量和折算的周课时量。

(3)dic3:存放课时和折算课时,key为年级-科目-周课时量/折算的周课时量,item为课时/折算课时,这个折算课时根据折算系统直接计算得出。

(4)dic4:不重复科目,主要用于对“任教班级和科目明细”中的科目进行醒目设置。

2、我们先把dic4、dic3所需数据处理好;

3、我们根据“教师安排表”和dic3,把数据装入字典dic2;

4、根据dic2的key的数量,我们重定义一个数组temp,然后逐级循环dic2的key,按每个教师组合一条字符串,填入第3列,其他各列也相应取数填入。

5、把temp数据写入工作表“教师工作量”,设置单元格的格式,这里我们特别设置了一个过程,把第3列的所有科目都设置成蓝色粗体。

另外:

我发现部分任教班级和科目明细”的字符串太长,好多重复的科目名称,我重新设置了一个过程,在组织dic2的时候,把科目与班级调换位置,我们看一下结果

原来的格式:

七年级:7班信息1节/8班信息1节/9班信息1节/10班信息1节/11班信息1节/12班信息1节

我调整后的格式:

七年级:信息7班1节/8班1节/9班1节/10班1节/11班1节/12班1节

示例代码详见当天另一条推文。

后记

1、任教班级和科目明细”中的字符拼接方式并没有完全按照原来的要求来做,省略了一些重复的信息,比如“1班语文6节/1班劳动1节/”变成“1班语文6节/劳动1节/”;不同年级换行显示等

2、为了能看得稍微清楚一点,我们把所有科目都设置成蓝色粗体。

3、第4张表,教师课时统计表,应该也可以根据字典dic2来生成,时间关系,我们就算了,感兴趣的朋友可以自行测试

好,今天就到这里,我们下期再会!


~~~~~~End~~~~~~

安利小店
安利的牙膏非常不错,用了以后就不想再用其他的了;洗洁精洗衣液也是日常必备,用过都说好!

合谷医疗
合谷医疗专攻各种疑难杂症,尤其擅长抑郁症焦虑失眠儿童神经发育异常多动症自闭孤独症腰颈椎疾病治疗,可谓神乎其技!体验过的直呼早点来就好了

喜欢就点个、点在看留言评论、分享一下呗!感谢支持!

案例文件分享说明

  • 案例文件可免费分享,但需符合以下要求:

  • 关注点赞点在看点...留言,方便的话分享一下就完美啦!如果不便走上面的“流程”,请打赏,万分感谢!

  • 请添加上方我的合谷医疗企业微信,案例文件通过微信发送。如有定制需求,亦可通过微信联系。

  • Excel问题,请在文章下面留言讨论!或者加入我的付费交流群提问

VBA编程实战
Excel应用案例、Excel VBA、公式函数使用技巧分享,思路解读...... 这里有鲜活案例、实用的技巧......
 最新文章