如何用Excel设计英语单词听写程序

1. “朗读单元格”按钮设计

“朗读单元格”不是“常用命令”,默认情况下在功能区中找不到这个命令。但可以通过“自定义功能区”设置,让这个命令显示在功能区工具栏上。

选择“文件→选项”菜单,进入“选项”设置对话框,点击“自定义功能区”,在右边的“主选项卡”中单击选择“开始”选项卡,再点击下面的“新建组(N)”按钮新建一个自定义组。具体方法如下。

在“从下列位置选择命令(C)”中选择“不在功能区中的命令”,找到“朗读单元格”命令,用鼠标单击选择这个命令,确认上一个步骤在“开始”选项卡新建的“新建组(自定义)”处于选择状态,点击“添加”按钮。这样,“朗读单元格”命令便在“开始”选项卡显示出来。同样的道理,将“朗读单元格-停止朗读单元格”按钮也显示在这个工具栏上。结果如图1所示(图1)。

如何用Excel设计英语单词听写程序

完成以上两步后,用鼠标选择要朗读的单元格,再点击“朗读单元格”按钮,系统便从上到下按顺序朗读单元格,无论是中文还是英文,都能进行朗读,朗读效果良好;点击“朗读单元格-停止朗读单元格”按钮,系统停止朗读。然而,这一功能缺乏对单元格之间间隔进行设置的选项,只能按要求不停地读完所有的单元格。但听写需要时间停顿去写,因此,我们必须通过VBA来解决词与词之间的停顿间隔时间的控制问题。

2. VBA解决停顿间隔控制

要利用Excel VBA进行程序设计,先必须在工具栏中显示“开发工具”。进入“选项”设置对话框,单击左边的“自定义功能区”,在右边窗口中选择“开发工具”前面的复选框,“开发工具”便显示在界面上。

点击“开发工具”选项卡,再点击“Visual Basic”按钮(或按Alt+F11),进入VBA编辑环境,单击“VBAProject (PERSONL.XLSB)”,再选择菜单“插入→用户窗体”,插入一个用户窗体后,修改其名称为tingxie,Caption(即窗体的标题)属性为“听写程序设置”。

在这个用户窗体上,分别添加两个“文字框”控件、两个“标签”控件、两个“命令按钮”控件,这些控件的“名称”都用系统默认的名称。两个“标签”的Caption属性分别是:“单词数量设置”和“听写词间间隔”,这两个标签控件放在两个“文字框”控件的前面,它的作用是为后面两个“文字框”的用途作说明;两个“文字框”的Text属性分别是:20、2,这是这两个“文字框”控件的初始值,程序利用这两个控件让用户输入“单词数量设置”和“听写词间间隔”数值;两个命令控钮的Caption属性分别是:确定、取消。拖动调整好窗体各控件的大小与相对位置至自己感觉合适时为止。结果如图2所示(图2)。

如何用Excel设计英语单词听写程序

3. 听写程序核心技术实现

听写程序核心技术实现分为三部分进行,具体如下。

(1)赋予命令按钮以灵魂

命令按钮要赋予其可执行代码,才能变成一个“活”的按钮。

双击“确定”按钮,在其中输入如下内容:

Private Sub CommandButton1_Click()

n = Val(TextBox1) ‘获取朗读单词数量

t = Val(TextBox2) ‘获取朗读词间间隔数量,单位是秒

m = ActiveCell.Row ‘获取当前活动单元格的行数

c = ActiveCell.Column ‘获取当前活动单元格的列数

b = m + n – 1 ‘计算从m开始朗读,共n个单词,达到要求时的最后一行的行数

On Error Resume Next

Call speakcontrol ‘调用朗读控制过程

tingxie.Hide

End Sub

双击“取消”按钮,在其中输入如下内容:

Private Sub CommandButton2_Click()

tingxie.Hide

End Sub

(2)创建朗读控制过程

这个朗读控制过程的作用是确定朗读的单元格,控制朗读过程中词间间隔,如果完成了所设置的朗读任务,则退出程序。

用鼠标单击“VBAProject (PERSONL.XLSB),再选择菜单“插入→模块”,在这里要完成声明公共变量、创建朗读控制过程以及朗读过程的工作。在其中输入如下内容:

Public a, b, c, m, n, t As Integer ‘定义公用变量

Sub speakcontrol()

Dim p, q

q = ActiveSheet.Cells(1, 1).SpecialCells(xlLastCell).Row ‘获取工作表的最后一行

On Error Resume Next

If t < 10 Then

p = “00:00:0” & t ‘时间在10秒以内时,计算p的方法

Else

p = “00:00:” & t ‘时间在10秒或以上时,计算p的方法

End If

If m > b Or m > q Then ‘如果朗读单词达到设置数量的要求或到了最后一行,则退出程序

Exit Sub

Else

a = Cells(m, c) ‘获取要朗读的单元格的文字

Application.OnTime Now + TimeValue(p), “wordspeak” ‘按照设定的时间间隔调用朗读过程

End If

End Sub

小提示:

这里还补充说明时间间隔p的计算问题。由于时间间隔t在60秒以内的这个范围内可能是1位数,也可能是2位数,这时p计算方法不一样,因此,我们要对t的位数作判断后再选择计算p合适的方法。

(3)实施具体朗读任务

以上的朗读的控制过程并没有具体实施朗读的工作,朗读的工作由朗读过程完成任务。在以上朗读控制过程的下方,创建一个为wordspeak的朗读过程,内容如下:

Sub wordspeak()

On Error Resume Next

Application.Speech.Speak a ‘朗读设定单元格中的文字

m = m + 1 ‘计算朗读的单元格的行数

Call speakcontrol ‘调用朗读控制过程

End Sub

这个过程具有朗读的功能,并将朗读单元格的行数加1,下移到下一行单元格中,最后返回朗读控制过程,由控制过程确定是否再往下继续朗读单词。

(4)创建启动宏的过程

虽然以上已经有窗体以及相关的控制与朗读的过程,但还缺少一个启动宏的过程。在以上过程的下方创建一个新的过程,命名为“听写”,内容如下:

Sub 听写()

tingxie.Show ‘显示听写设置窗口

End Sub

以上各个模块内容如图3所示(图3)。为方便使用,可直接通过云盘下载后复制粘贴(http://pan.baidu.com/s/1qXcTKFq 密码8r2m)。

如何用Excel设计英语单词听写程序

小提示:

要运行宏,必须先通过“开发工具”选项卡,点击“宏安全性”按钮,进入到“宏设置”中选择“启用所有宏”(最下面的选项)。

在Excel 2016中调试无误后,即可运行程序。先在要朗读的单词列的最上方单元格单击,点击“开发工具”选项卡中的“宏”按钮,在弹出的“宏”选择对话框中,选择“听写”宏,再点击“运行”按钮,在弹出“听写程序设置”对话框中输入“单词数量设置”、“听写词间间隔”,确定后便可进行英语听写训练了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 86345@qq.com 举报,一经查实,本站将立刻删除。
(1)
上一篇 2022-04-04 02:10:08
下一篇 2022-04-04 02:20:05

猜你喜欢

  • 家纺设计八大风格,哪一种是你的最爱?家纺设计的基本思路方法

    床品除了是睡眠的工具之外,还代表着人的审美情调和生活态度。不同风格的床品可以带来不同的居家体验,今天宝儿姐给大家带来了四款不同风格的床品四件套,各个高颜值,赶紧来看看吧。 北欧简约…

    投稿 2024-08-27
  • 杨树常见病虫害防治措施

    杨树在城市的绿化、沙漠的防护等,减少水土流失方面有着重要的作用,其品种十分繁多,适应性强,在我国分布也是极为广泛,在杨树生长过程中,病虫害的防治不容忽视,本期就来分享一下关于杨树常…

    2024-08-13
  • 三大平原是哪三个_三大平原的面积

    所谓“地形”是指地球表面的形态,主要反映地表的高低起伏状况,地形与地貌、地势有一定的联系,又有明显的区别,地形主要侧重于地表的结构形态。基本的地形类型有五种,分别是平原、高原、丘陵…

    2023-05-04
  • 玉手镯取不下来怎么办_轻松取下镯子的小妙招

    从古至今玉镯就深受很多女性的青睐,佩戴玉镯不仅可以起到装饰作用,而且它含有对人体有益的十多种微量元素,直接和皮肤接触还有促进人体健康的作用。但是玉镯子有时候戴久了很难取下来,比如身…

    2023-03-29
  • 金鱼草怎么养_金鱼草的养殖技巧

    有些植物虽然叫草,但是却可以开出美丽的花,比如金鱼草。花色丰富,五颜六色的,红色的金鱼草像极了小金鱼。别的颜色的形态也非常像。一串一串的,花朵玲珑,植株其实一点都不小巧。可以长到将…

    2023-04-07
  • 减脂期可以吃巧克力吗_适合减脂期购买的巧克力推荐

    黑巧克力非常健康和营养,然而可选择的品牌实在是五花八门。根据成分和加工方法,有些比其他更好。那么你应该选择哪一个呢? 什么是黑巧克力? 黑巧克力是通过在可可中添加脂肪和糖来生产的。…

    2023-03-20
  • 23年端午节法定是几天_端午节假期规定

    端午作为一年中最为隆重的节假日之一,所以大家对该节日还是蛮期待的,但由于往常端午假期都是于周末拼的,因而2023年端午节法定1天还是3天成了大家爱最为关注的,下面小编就和大家一起看…

    2023-04-06
  • 汽车吉利好还是长安好_长安PK吉利

    我开过吉利星锐和长安CS75PLUS。经过一段时间的相处,我终于明白了吉利和长安的差距。我劝想买国产车的人三思。 国产车近几年虽取得了长足进步,但参差不齐的核心质量始终让人难以接受…

    2022-04-09
  • 默认用excel打开文件(Excel自动打开)

    方法一、 启动Excel2010,在“文件”选项卡界面的左侧单击“选项”按钮,如图所示: 然后打开“Excel选项”对话框,单击“高级”选项卡,在其中的“常规”栏的“启动时打开此目…

    2022-04-12
  • 白细胞减少是什么问题引起的_白细胞减少的原因是什么

    白细胞是身体上的巨噬细胞,部分人去医院做血常规检查时,发现白细胞计数降低,这让他们很是担忧,害怕是白血病来临。其实白血病减少是复杂的病因,分为三种情况,分别是白细胞生成减少、白细胞…

    2022-07-29

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注