白话Excel函数公式 Office易学宝微视频教程合集(Excel+Word+PPT)
笨办法学VBA(从入门到精通) 高效办公必会的Office实战技巧
财务总监的Excel私房课 Excel数据透视表实战秘技
Excel图表神技
查看: 1267|回复: 1

VBA实际应用小小思考系列之2--看图说话(2楼正解)

[复制链接]
发表于 2012-3-3 07:57:22 | 显示全部楼层 |阅读模式
本帖最后由 hustnzj 于 2012-3-3 09:26 编辑
  1. Private Sub Workbook_Open()
  2.     Dim i%
  3.     For i = 1 To 10               
  4.         Cells(i, 1) = Rnd()
  5.     Next i
  6. End Sub
复制代码

已知在Thisworkbook中Open事件中写入如下代码:按照常理,每次产生的数应该都是随机的。但发现:每次打开工作簿后,产生的数都是同样的规律。如下动画:

思考2.gif

请解释原因,并修改代码,达到每次产生的数都是随机的。

Ps: 由于此题未在中心审核,故只有第一个答对的同学有适当奖励。呵呵。

回复

使用道具 举报

发表于 2012-3-3 08:57:04 | 显示全部楼层
在调用Rnd之前先初始化随机数生成器就可以实现每次生成不同的随机数了。
Randomize功能:初始化随机数发生器
代码如下
[code=vb]Private Sub Workbook_Open()
    Dim i%
    Randomize
    For i = 1 To 10
    Cells(i, 1) = Rnd()
    Next i
End Sub[/code]

评分

参与人数 1登攀 +8 收起 理由
hustnzj + 8 赞一个!

查看全部评分

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 入学

本版积分规则

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