如何实现学生评语的导入
上一次学生评语的导入问题,因为当时不会从word中导入,所以只能要求学生用Excel填写,然后导入到大表当中去的,在实际操作中发现学生对Excel并不熟悉,导致了出现了大量的错误,学生比较熟悉的还是Word,所以现在这个程序就是来解决如何从Word中读取学生评语,然后导入到Excel中指定单元格中。由于只是要求学生把3个学期的评语分成三段来书就可以,这样应该可以更加减少学生出错的机率。
原始文件的存放格式如下图所示:
保证文件格式以及存放位置如上图所示。
一、将word版评语转化为Excel版评语:
Sub 将word评语转换成Excel评语()
Dim sr As FileSearch '定义一个文件搜索对象
Dim i As Integer, j As Integer, k As Integer
Dim myFile As String, cp As String
Dim docApp As Word.Application '定义前要先定义一个word对象的引用。
Dim docRange As Word.Range
Set sr = Application.FileSearch
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 1 To 1 '按班级
sr.LookIn = "E:导入评语word学生评语汇总" & Trim(Str(i)) & "班" '注意路径,换成你实际的路径
sr.Filename = "*.doc" '搜索所有文件
sr.Execute '执行搜索
Cells.Delete '表格清空
For k = 1 To sr.FoundFiles.Count
myFile = sr.FoundFiles(k) '指定Word文档,要保证将电子表格与word文档放在同一文件夹下。
Set docApp = New Word.Application
docApp.Documents.Open myFile
Workbooks.Add
For j = 1 To 3 '为了防止学生多敲回车,可以将此处改为3(代表3个学期)
With docApp.ActiveDocument
'If .Paragraphs.Count >= 4 Then
Set docRange = .Paragraphs(j).Range 'Paragraphs是段的意思
'cp = docRange
ActiveWorkbook.ActiveSheet.Range(Cells(j, 1), Cells(j, 1)).Value = docRange
'End If
End With
Next j
'Range("a1") = cp
docApp.Quit savechanges:=False
Set docRange = Nothing
Set docApp = Nothing
ActiveWorkbook.SaveAs Filename:=Left(sr.FoundFiles(k), Len(sr.FoundFiles(k)) - 4) & ".xls"
ActiveWorkbook.Close savechanges:=True
Next k
Next i
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
二、清除100字评语
Sub 清除100字评语2()
Dim xueqi, bj, i As Integer
For xueqi = 1 To 3
For bj = 1 To 23
Workbooks.Open "E:导入评语word第" & Format(Str(xueqi)) & "学期发展报告上传数据" & Format(Str(bj)) & "班" & "sy.xls"
totalR = Range("A65536").End(xlUp).Row
Range(Cells(2, 10), Cells(totalR, 10)).clear
Workbooks("sy.xls").Close savechanges:=True
Next bj
Next xueqi
End Sub
本来想做个对象,可以实现不打开sy.xls就可以清除,但这是不可能的,利用getobject只可引用,但不能写入,即只可以读,不可以写。
但可以通过ADO的方法来实现,一会再研究。
三、将所有学生的Excel版评语导入到“班级”sy.xls中:
Sub 将学生评语提取到班级素养表中进行汇总()
Application.DisplayAlerts = False
Dim totalR, i, xueqi, bj As Integer
Dim mypath As String
Dim py(), xh() As String
Dim wb As Object
For xueqi = 1 To 3
For bj = 1 To 23
Workbooks.Open "E:导入评语word第" & Format(Str(xueqi)) & "学期发展报告上传数据" & Format(Str(bj)) & "班" & "sy.xls"
totalR = Range("A1").CurrentRegion.Rows.Count
mypath = ActiveWorkbook.Path
ReDim py(totalR - 1), xh(totalR - 1)
For i = 2 To totalR
xh(i - 1) = Cells(i, 1).Value
Next i
For i = 2 To totalR
Set wb = GetObject("E:导入评语word学生评语汇总" & Format(Str(bj)) & "班" & xh(i - 1) & ".xls")
On Error Resume Next
py(i - 1) = wb.Sheets(1).Cells(xueqi, 1).Value
wb.Close False
Set wb = Nothing
Debug.Print py(i - 1)
Next i
'Workbooks("sy.xls").Activate
For i = 2 To totalR
Cells(i, 10).Value = py(i - 1)
Next i
ActiveWorkbook.Close savechanges:=True
Next bj
On Error GoTo 0
Next xueqi
End Sub
试验程序:
Sub 读取Word文档到Excel中()
Dim myFile As String, i As Integer, cp As String
Dim docApp As Word.Application '定义前要先定义一个word对象的引用。
Dim docRange As Word.Range
myFile = ThisWorkbook.Path & "3.doc" '指定Word文档,要保证将电子表格与word文档放在同一文件夹下。
Set docApp = New Word.Application
docApp.Documents.Open myFile
For i = 1 To docApp.ActiveDocument.Paragraphs.Count '为了防止学生多敲回车,可以将此处改为3(代表3个学期)
With docApp.ActiveDocument
'If .Paragraphs.Count >= 4 Then
Set docRange = .Paragraphs(i).Range 'Paragraphs是段的意思
'cp = docRange
Range(Cells(i, 1), Cells(i, 1)).Value = docRange
'End If
End With
Next i
'Range("a1") = cp
docApp.Quit
Set docRange = Nothing
Set docApp = Nothing
'Set ws = Nothing
End Sub
再解决一下如何读取顺序文件,源程序如下:
Sub ReadMe()
Dim rLine As String
Dim i As Integer ' 行号
i = 1
Open "C:Autoexec.bat" For Input As #1
'在循环里直到过程结束
Do While Not EOF(1)
Line Input #1, rLine
MsgBox "行" & i & " 在Autoexec.bat中读取: " _
& Chr(13) & Chr(13) & rLine
i = i + 1
Loop
MsgBox i & "行被读取."
Close #1
End Sub
转载于:https://www.cnblogs.com/xiehui/archive/2010/04/03/2004315.html
如何实现学生评语的导入相关推荐
- 学生评语管理系统软件测试,学生评语管理系统测试版
学生评语管理系统包含您写评语所需要的99%的功能,大幅度减轻教师写评语负担,并真正意义上实现学生评语的"管理"功能. 1.独创的学生评语打印/预览功能,精确套 打学生评语,打印的精 ...
- 计算机基础知识掌握评语,计算机教师给学生评语
学生对老师的评语200字 专业知识过硬,风趣幽默. 善于观察,给与每个人发言的机会,经常表扬,看学生的性格和接受程度给与一定批评. 认真,大度,循循善诱,和蔼鼓励,不耻下问,以身作则. 不放弃每一个学 ...
- 学生评语 计算机术语版,信息技术学生评语大全
<信息技术学生评语大全>由会员分享,可在线阅读,更多相关<信息技术学生评语大全(9页珍藏版)>请在人人文库网上搜索. 1.信息技术学生评语大全信息技术评语集锦1.在学习计算机软 ...
- 计算机专业评语,计算机专业学生评语
计算机专业学生评语 1.高中的学习动机十分简单,那就是高考,学生.老师.学校三位一体为高考,可以说是不择手段.而大学,由于奋斗目标突然变得模糊,学习动机也变得模糊起来.学习的目的性偏弱,不知为何而学习 ...
- 学生评语 计算机术语版,计算机专业学生评语.doc
计算机专业学生评语 1.高中的学习动机十分简单,那就是高考,学生.老师.学校三位一体为高考,可以说是不择手段.而大学,由于奋斗目标突然变得模糊,学习动机也变得模糊起来.学习的目的性偏弱,不知为何而学习 ...
- 最有文采有学生评语下载大全
最有文采有学生评语下载大全 2010年01月22日 http://www.stlyzx.com/Special_News.asp?SpecialID=26 访问网址超出本站范围,不能确定是否安全 继续 ...
- 那是计算机房吗英语的反问句,小学生作文评语大全_学生评语.doc
小学生作文评语大全_学生评语_范文先生网 小学生作文评语大全 读读这生动的学生作文评语,你心中会有说不出的欣喜和激动.虽然只是只言片语,却处处弥散着小作者们灵动的才思.语言之所以能如此鲜活,离不开类比 ...
- 计算机教师评语中职,中职计算机专业学生评语-20210614110723.doc-原创力文档
. . . . . 学习.资料. 宿迁经贸高等职业技术学校 学生学期评语审查表 (2015---2016学年度第1学期) 系 部: 信息系 班 级: 15计算机2班 班级人数: 37 班 主 任: 周 ...
- 班主任爬取学生评语,批量自动写入表格,应对大量重复填表任务
一个小网页,不让复制,所以写几句代码,爬取网页的文字,一般文字放在在P标签的那种网页,其实都可以用的 把输出的文字复制粘贴保存到文件,命名为 评语.txt import requests from b ...
最新文章
- 3D惯导Lidar仿真
- 对Oracle中索引叶块分裂而引起延迟情况的测试和分析
- EMC CLARiiON 的 Alignment offset
- hibernate中List一对多映射关系详解
- 如何预防食品被新冠病毒污染?国家卫健委权威解答来了
- 数据结构--环形链表
- 引入ReactiveInflux:用于Scala和Java的无阻塞InfluxDB驱动程序,支持Apache Spark
- elk 概念整理 集群状态 - yellow
- ulipad.4.1.zip linux,在ubuntu中安装ulipad
- Linux 五个最牛视频编辑软件
- 用Photoshop抠图
- mac java 更新_mac版java怎么更新升级 mac版java更新升级方法
- pull request 时遇到 conflicted 的解决方法
- element el-input特殊字符校验
- 水星路由器登录界面找不到服务器,水星路由器管理页面怎么登陆不进去? | 192路由网...
- 【机器学习】SVR支持向量机回归
- Unity两种获取屏幕点击位置的世界坐标方法
- 智能门锁:电源管理概述2
- 驱动专题:第五章MTD及Flash驱动 2.Nandflash驱动
- python求合数的所有因子,0是素数吗(python求一个数的因子)