headhuanglan 发表于 2013-6-19 23:07:52

Last tool for GRE 的VBS版本,任何windows系统都能用,可发音带音标!

看到有同学用matlab写了个Last tool for GRE的版本很开心...但是似乎不能显示音标?而且有不少同学是不用matlab的,但大部分同学肯定用windows系统,所以...写了个VBS版本的Last tool for GRE。使用方法:直接双击gre.vbs即可,乱序的单词背诵次序随机生成!
(但还是要感叹。。。如果有琦叔3000的excel文件或者新版42个list的GRE红宝excel文件就好了。。。)
主要思路:用VBS脚本来操作excel,在excel中记录下是否已经背会当前单词,而且可以选择是否发音(若觉得发音会降低过单词速度的同学可以选择不发音),是否开启excel显示(不开启的话就直接弹窗来背单词),无论任何种方式,最终都会把背单词的次数和是否正确写入excel文件,最终可以通过excel筛选来查看自己多次背错的单词!


本人专业并非信息技术相关。。。VBS脚本若有不足之处希望信息专业同学帮忙改进完善。程序暂时无法中途退出背诵,所以选了多少词就坚持到底吧!O(∩_∩)O~




附~附件VBS代码:

'定义“交换”过程swap(a,b)——将a,b值互换,为了核心算法用
Public Sub swap (a,b)
c = a: a = b: b = c
End Sub
Dim a()
Randomize
Set spell = CreateObject("sapi.spvoice")
currentfolder = createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path
Set   ExcelApp  =  CreateObject("Excel.Application")      '创建EXCEL对象   
Set   ExcelBook =  ExcelApp.Workbooks.open(currentfolder+"/gre.xlsx")
Set   ExcelSheet   =   ExcelBook.Worksheets(1)
      
flag1=MsgBox("是否显示GRE单词excel文件?", vbYesNo, "提示")
if flag1=vbYes then
ExcelApp.Visible = True
end if
flag=MsgBox("是否开启单词发音功能?", vbYesNo, "提示")
i = InputBox("输入起始序号:")
if i=1 then i=2
j = InputBox("请输入终止序号(最大为6193):")
if j>6193 then j=6193
num=j-i+1
msgbox ("您选择的单词数目为:"&num)
ReDim a(num)
'将从起始号i到终止号j的num个数放入a()
For k = 1 To num
  a(k) = i + k - 1
Next
'下面对数组a()中的元素制造出一个随机排列,以取sheet1中的行号
For s = 1 To num
  Call swap(a(s), a(Int(Rnd() * num) + 1))
Next
For m = 1 To num
     if flag=vbYes then
         spell.speak ExcelSheet.Range("A"&a(m)).Value
      end if
     re=msgbox(ExcelSheet.Range("A"&a(m)).Value&ExcelSheet.Range("B"&a(m)).Value&ExcelSheet.Range("C"&a(m)).Value,vbYesNo,"加油!O(∩_∩)O~")

      if re=vbNo then
              ExcelSheet.Cells(a(m),4).value = ExcelSheet.Cells(a(m),4).value+1  '给单元格D(a(m))赋值
       end if
   ExcelSheet.Cells(a(m),5).value = ExcelSheet.Cells(a(m),5).value+1
Next


r=MsgBox("退出并关闭gre.xlsx?", vbYesNo, "提示")
If r = vbYes Then
ExcelBook.Close (True) '关闭工作簿
ExcelApp.Quit '结束EXCEL对象
Set ExcelApp = Nothing '释放App对象
Set spell = Nothing
end If

compe 发表于 2013-6-19 23:15:05

感谢分享,thanks alot

compe 发表于 2013-6-19 23:17:46

另外,论坛里面有3000的excel版,应该是last tool 红宝版 改的,楼主有功夫开发的话可以传给你{:1_1:}:lol

headhuanglan 发表于 2013-6-19 23:20:31

直接把地址贴到这个帖子后面,我有空的话看看!

核小酥 发表于 2013-6-19 23:23:12

文科僧膜拜大神!!!!!!!!!!!!!!

抱走

拜谢!!!

headhuanglan 发表于 2013-6-19 23:29:43

compe 发表于 2013-6-19 23:17 static/image/common/back.gif
另外,论坛里面有3000的excel版,应该是last tool 红宝版 改的,楼主有功夫开发的话可以传给你

直接把文件地址发给我,我有空的话我看看,正发愁3000怎么过呢。。。。

小猪和大猪 发表于 2013-8-16 10:58:07

谢谢分享:p

fddyn 发表于 2013-10-1 11:00:30

感谢分享,thanks alot

ddxxrr 发表于 2014-4-7 20:18:49

楼主好人!

挪威蚂蚁 发表于 2015-4-26 06:39:21

感谢楼主分享资源!

soloss 发表于 2016-1-24 13:35:11

:(

soloss 发表于 2016-1-24 13:35:37

{:1_1:}

江公子 发表于 2016-1-29 17:27:58

感谢分享

于泊宁 发表于 2016-1-29 18:04:28

???东西呢?求分享

Alaricsz 发表于 2016-5-26 23:55:24

thanks!
页: [1] 2
查看完整版本: Last tool for GRE 的VBS版本,任何windows系统都能用,可发音带音标!