ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 如何利用VBA解决学生综合素质评价问题

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-5-24 15:45 | 显示全部楼层
………………

1.民主评议.rar

126.17 KB, 下载次数: 16

审……

TA的精华主题

TA的得分主题

发表于 2020-5-24 16:50 | 显示全部楼层
楼主如果身为教师,应该有时间学习VBA,这对楼主大有好处啊。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-24 20:52 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
liufb203 发表于 2020-5-24 13:49
其实大家初学vba都是从伸手党过来的,只不过是大神们比我们先伸手。我不觉得伸手党有啥不好,至少也是在寻 ...

感谢理解,准备空闲时间学一学

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-24 21:04 | 显示全部楼层
excelvlookup 发表于 2020-5-24 14:15
写了民主评议表合并、汇总,别的可以仿照自己写

谢谢,明天到校试一试

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-24 21:05 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-24 21:06 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
cui26896 发表于 2020-5-24 16:50
楼主如果身为教师,应该有时间学习VBA,这对楼主大有好处啊。

谢谢指点。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-25 12:36 | 显示全部楼层
excelvlookup 发表于 2020-5-24 14:15
写了民主评议表合并、汇总,别的可以仿照自己写

验证了一下,结果不是我想要的。最后汇总=自评*10%+互评的平均分*50%+教师评的平均分*40%

能否帮我修改一下,谢谢!


民主评议.rar (120.06 KB, 下载次数: 1)

TA的精华主题

TA的得分主题

发表于 2020-5-25 13:07 | 显示全部楼层
先把前两个汇总后再运行这个测评汇总
Sub 民主测评()
Set cnn = CreateObject("ADODB.Connection")
cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=Excel 12.0;Data Source=" & ThisWorkbook.FullName
With Sheets("民主评议汇总")
    .UsedRange.Offset(1).ClearContents
    sqlx = "select 序号,学籍号,性别,班级,姓名,avg(学业水平)*0.1 as 学业水平,avg(身心健康)*0.1 as 身心健康,avg(艺术素养)*0.1 as 艺术素养,avg(社会实践)*0.1 as 社会实践 from [自评$a1:i] where 学籍号 <> NULL  group by 序号,学籍号,性别,班级,姓名"
    sqlh = "select 序号,学籍号,性别,班级,姓名,avg(学业水平)*0.5 as 学业水平,avg(身心健康)*0.5 as 身心健康,avg(艺术素养)*0.5 as 艺术素养,avg(社会实践)*0.5 as 社会实践 from [互评$a1:i] where 学籍号 <> NULL group by 序号,学籍号,性别,班级,姓名"
    sqlj = "select 序号,学籍号,性别,班级,姓名,avg(学业水平)*0.4 as 学业水平,avg(身心健康)*0.4 as 身心健康,avg(艺术素养)*0.4 as 艺术素养,avg(社会实践)*0.4 as 社会实践 from [教师评$a1:i] where 学籍号 <> NULL group by 序号,学籍号,性别,班级,姓名"
    Sql = "select a.序号,a.学籍号,a.性别,a.班级,a.姓名,a.学业水平+b.学业水平 as 学业,a.身心健康+b.身心健康 as 身心,a.艺术素养+b.艺术素养 as 艺术,a.社会实践+b.社会实践 as 社会 from (" & sqlx & ") a left join (" & sqlh & ") b on a.学籍号=b.学籍号"
    Sql = "select c.序号,c.学籍号,c.性别,c.班级,c.姓名,c.学业水平+d.学业,c.身心健康+d.身心,c.艺术素养+d.艺术,c.社会实践+d.社会 from (" & sqlj & ") c left join (" & Sql & ") d on c.学籍号=d.学籍号"
    .Range("a2").CopyFromRecordset cnn.Execute(Sql)
End With
    cnn.Close
    Set cnn = Nothing
End Sub

TA的精华主题

TA的得分主题

发表于 2020-5-25 15:23 | 显示全部楼层
又改了一下,不知到还有没有更简单的办法,你试试看
Sub 民主测评()
Set cnn = CreateObject("ADODB.Connection")
cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=Excel 12.0;Data Source=" & ThisWorkbook.FullName
With Sheets("民主评议汇总")
    .UsedRange.Offset(1).ClearContents
    sqlx = "select 学籍号,([学业水平]*0.1) as 学业水平,([身心健康]*0.1) as 身心健康,([艺术素养]*0.1) as 艺术素养,([社会实践]*0.1) as 社会实践 from [自评$a1:i] where 学籍号 <> NULL"
    sqlh = "select 学籍号,avg(学业水平)*0.5 as 学业水平,avg(身心健康)*0.5 as 身心健康,avg(艺术素养)*0.5 as 艺术素养,avg(社会实践)*0.5 as 社会实践 from [互评$a1:i] where 学籍号 <> NULL group by 学籍号"
    sqlj = "select 序号,学籍号,性别,班级,姓名,avg(学业水平)*0.4 as 学业水平,avg(身心健康)*0.4 as 身心健康,avg(艺术素养)*0.4 as 艺术素养,avg(社会实践)*0.4 as 社会实践 from [教师评$a1:i] where 学籍号 <> NULL group by 序号,学籍号,性别,班级,姓名"
    Sql = "select c.序号,c.学籍号,c.性别,c.班级,c.姓名,a.学业水平+b.学业水平+c.学业水平,a.身心健康+b.身心健康+c.身心健康,a.艺术素养+b.艺术素养+c.艺术素养,a.社会实践+b.社会实践+c.社会实践 from ((" & sqlx & ") a left join (" & sqlh & ") b on a.学籍号=b.学籍号) left join (" & sqlj & ") c on a.学籍号=c.学籍号"
    .Range("a2").CopyFromRecordset cnn.Execute(Sql)
End With
    cnn.Close
    Set cnn = Nothing
End Sub

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-25 17:50 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-3-28 23:31 , Processed in 0.115706 second(s), 9 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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