美文网首页
Excel VBA 实例(25) - 班级随机点名并播报

Excel VBA 实例(25) - 班级随机点名并播报

作者: 永恒君的百宝箱 | 来源:发表于2020-02-24 10:32 被阅读0次

    今天一位教师粉丝发来了这样一个小需求:在上课的时候面对太多的学生姓名,有时候不知道该点哪位同学的名来回答问题。他希望可以一键点击就能实现随机抽取学生姓名,并播放出来的功能。

    如下图

    这个功能实现其实很简单,用一行代码就可以解决这个问题:

    =INDEX(A:A,RANDBETWEEN(2,15))
    A:A为姓名的范围,RANDBETWEEN()随机抽取的行号

    但是这种方法比较呆板,遇到要增加或者减少的姓名的时候,公式需要重新写,比较不方便。而且也没有播放的功能。

    用VBA的话,就可以很好的解决上面两个问题。先展示一下效果:Excel VBA 实例(25) - 班级随机点名并播报_腾讯视频

    可以看到,无论是增加或者减少姓名,点击“随机点名”的按钮,都可以随机抽取姓名,同时会播放内容。

    当然,播放的内容也是可以自定义的,你想播放啥内容都可以~~~

    代码如下:

    Sub 随机点名()
    Dim rng As Range
    Set rng = Range("B:B").Find("姓名")
    start_row = rng(2, 1).Row
    end_row = rng.End(xlDown).Row
    i = Int(Rnd * (end_row - start_row + 1)) + start_row
    rng(3, 3) = Cells(i, 2)
    ssr = "请" & rng(3, 3).Value & "同学回答问题!"
    Application.Speech.Speak ssr
    End Sub

    代码很短,感兴趣的可以在公号内回复「随机点名」自取试用,尽快吧。

    星球里的朋友有需求可以提供一对一的解释和定制服务,有问题可以联系我!

    相关阅读:

    Excel VBA 实例(24) - 新股(债)中签一键批量查询

    Excel VBA 实例(23) - 一键批量提取word表格内容

    Excel VBA 实例(22) - 一键筛选其他工作表或工作簿的数据

    欢迎交流!

    相关文章

      网友评论

          本文标题:Excel VBA 实例(25) - 班级随机点名并播报

          本文链接:https://www.haomeiwen.com/subject/xydmqhtx.html