精华内容
下载资源
问答
  • VBA产生随机数的函数

    千次阅读 2015-03-23 10:43:04
    'Dim min As Integer '定义随机数的最小值 'Dim max As Integer '定义随机数的最大值 '限制只产生500个,VBA的速度问题 Public Function CreateRND(ByVal min As Integer, _
    <span style="font-family: Arial, Helvetica, sans-serif;"></span><pre name="code" class="vb">'Dim min As Integer                             '定义随机数的最小值
    'Dim max As Integer                             '定义随机数的最大值
    '限制只产生500个,VBA的速度问题
    Public Function CreateRND(ByVal min As Integer, _
                    ByVal max As Integer) As Integer()
        
        Dim a_size As Integer
        
        a_size = max - min
        
        If a_size > 500 Or max - min + 1 < a_size Then: Exit Function             '限制只产生500个,VBA的速度问题
                                                   '如果最大值和最小值的差小于数组大小数值就什么也不做
         
        
        Dim arr() As Integer                            '定义数组
        ReDim arr(a_size)                               '更改数组大小
        Dim flag As Boolean                             '定义标志变量,用来判断是否有重复值
        
        Randomize (Now())                               '用当前时间生成随机数种子
        
        For i = 0 To a_size                             '循环生成随机数
            
            Do
                arr(i) = Rnd() * (max - min) + min      '生成随机数
                
                flag = False
                
                For j = 0 To (i - 1)                    '循环判断当前的随机数是否和前面生成的随机数相同,如果相同就重新生成
                    
                    If (arr(i) = arr(j)) Then
                        flag = True
                    End If
        
                Next
                
            Loop While flag
            
            '循环中不断生成随机数,直到不重复为止
            
        Next
        
        CreateRND = arr
        
    End Function
    

     

    
     


     调用方法:

     

     

     

        Dim arr() As Integer
        arr = CreateRND(10034, 0, 10034)
    

     

     

     

     

     

    展开全文
  • 请教用VBA产生随机数的问题!

    千次阅读 2006-02-15 13:12:00
    背景:用PPT做一个选号的界面,按开始便不断地产生随机数(1-24),按停止则显示一个随机数。条件:1、24个数字分为6组第一组:1,2,3,4第二组:5,6,7,8第三组:9,10,11,12第四组:13,14,15,16第五组:17...

    背景:

    用PPT做一个选号的界面,按开始便不断地产生随机数(1-24),按停止则显示一个随机数。

    条件:

    1、24个数字分为6组
    第一组:1,2,3,4
    第二组:5,6,7,8
    第三组:9,10,11,12
    第四组:13,14,15,16
    第五组:17,18,19,20
    第六组:21,22,23,24

    2、每次产生一个随机数,但要产生多次(最终可产生1-6个随机数)。

    3、在每一轮的选号中产生的任意两个随机数不能是同一组的。也就是说产生一个随机数后,下一个随机数不可以在同一组产生。

    哪位高手帮帮我!!谢。。。。。。。。。。。。。。。

    展开全文
  • Rnd函数在产生随机数的时候,并不bai是真正的随机,而是通过一定的公式计算产生的随机,现在我们把那个计算产生随机数的公式叫做f(x),第一个x取值为1 那么便会产生第一个随机数f(1),第2个随机数是在第一个随机数...

     

    总结前置

    • 如果想永远生成相同的随机数,就用rnd(-1) 但是这么做没意义吧?
    • 如果想每次生成的随机数,本次程序运行结束前都一样,下次计算时不一样。就用  randmize  和 rnd(0)
    • 如果想永远生成不同的随机数,无论是序列内,还是在不同的环境重新运行都不同,就用   randmize  和 rnd(1) 或 randmize 和 rnd  缺省就可以。

     

    1 VBA中直接使用 rnd,是一个公式计算出来的模拟(伪随机)

    • 什么叫伪随机
    • 随机数的生成是使用一个写定的公式,来模拟随机的感觉
    • 但是这个生成随机数的模拟公式 f(f(f(1)))  受第一个数影响很大,一般称为随机种子

     

    • 如何形象的理解伪随机数
    • 你就想象,你的随机函数,每次生成的都是 3.1415926 这个序列,先给你生成3 1 4 1 5 9 2 6.。。。,下次你重新,还是从3 1 4 1 5 9 2 6.。。。 开始

     

    2 伪随机数会带来什么问题:永远是同一组随机数

    • 下面是一个对比测试
    • 都是同一段代码
    • 最左边的是,多次运行代码的结果,看起来每次随机的结果都不同
    • 中间的,是每次执行后,都点停止运行,再点开始运行,这样loop循环操作出的结果
    • 最右边的,是每次执行后,点3次运行,然后点停止运行,这样loop循环操作出的结果
    • 对比后,发现很神奇的结果
    1. VBA里默认用  rnd 随机,如果一直运行,其实能一直往下随机
    2. 但是随机出的这一串数其实每次都是固定的从第1个 0.7055475 开始,可以说这1串数是固定的!也就是,每次重新开始,都是这一串相同的数组!
    3. 也就是相当于,不同的时候,重新开始执行这个 rnd 随机,随机结果永远相同!
    4. 也就是这段代码,每次在不同的时候重新开始运行,总是生成相同的随机数序列!!!!

     

    Sub t1111()
    
    Debug.Print Rnd
    
    End Sub

    • 参考内容
    • Rnd函数在产生随机数的时候,并不是真正的随机,而是通过一定的公式计算产生的随机,现在我们把那个计算产生随机数的公式叫做f(x),第一个x取值为1
    • 那么便会产生第一个随机数f(1),第2个随机数是在第一个随机数的基础上产生的即f(f(1)),依次类推,第3个随机数是f(f(f(1)))
    • 不难发现,第一个数1,对于产生的一系列随机数是非常重要的,这个1,我们称之为种子数,一个种子数就对应一系列的随机数,如果种子数不发生变化,那么便会生成一系列相同的随机数
    • 这段分析来自网上一个大神写的
    • https://zhidao.baidu.com/question/1945597673623666508.html

     

    3  关于 rnd 的语法

    3.1 基本语法

    • excel里用 rand()  和 randbetween()
    • VBA里用 rnd

    Rnd[(number)]
    可选的 number 参数是 Single 或任何有效的数值表达式。
    返回值
    如果 number 的值是        Rnd 生成
    小于 0        每次都使用 number 作为随机数种子得到的相同结果。
    大于 0        序列中的下一个随机数。
    等于 0        最近生成的数。
    省略        序列中的下一个随机数。
    说明
    Rnd 函数返回小于 1 但大于或等于 0 的值。
    number 的值决定了 Rnd 生成随机数的方式。
    对最初给定的种子都会生成相同的数列,因为每一次调用 Rnd 函数都用数列中的前一个数作为下一个数的种子。
    在调用 Rnd 之前,先使用无参数的 Randomize 语句初始化随机数生成器,该生成器具有根据系统计时器得到的种子。
    为了生成某个范围内的随机整数,可使用以下公式:
    Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
    这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。
    注意 若想得到重复的随机数序列,在使用具有数值参数的 Randomize 之前直接调用具有负参数值的 Rnd。使用具有同样 number 值的 Randomize 是不会得到重复的随机数序列的。

     

    3.2 基本用法

    • 要知道  rnd 是左闭右开区间   [0,1)
    • 如果要生成 a~b之间的随机数,一般是 a+ (b-a)*rnd

     

    3.3   rnd 和 rnd(-1)  rnd(0)  rand(1)  参数负数,零,和正数

    • 测试下面3段代码,发现只有   rnd(2 ) 每次随机都变化
    Sub TEST1()
      For i = 1 To 3
        Debug.Print Rnd(-1)
      Next
    End Sub
    Sub TEST2()
      For i = 1 To 3
        Debug.Print Rnd(0)
      Next
    End Sub
    Sub TEST3()
      For i = 1 To 10
        Debug.Print Rnd(2)
      Next
    End Sub
    • 最左边是test1的结果
    • 其次是test2的结果
    • 第3个是test3 一直点运行的结果
    • 第4个是test3 点一次运行,点一次停止后的结果,可见,每次重新开始,每次开始都是那3个

         

     

    3.4 直接用 rnd 和 rnd(-1)  rnd(0)  rand(1)  的总结

    小于 0        每次都使用 number 作为随机数种子得到的相同结果。
    大于 0        序列中的下一个随机数。
    等于 0        最近生成的数。
    省略        序列中的下一个随机数。

    •  rnd(-1) 永远 生成相同的随机数,无论是继续生成下一个,还是重新开始随机
    •  rnd(0)  生成最近生成的数。也就是继续生成下一个的时候会是一样的上次的,重新开始也是一样,因为拥有=第1个。
    •  rnd(1) 生成下一个数,且生成的下一个会不一样。但是,重新开始会依然从相同的第1个开始,也就是序列相同。
    • rnd 同正数的

     

    3.5 配合 randomize  直接用 rnd 和 rnd(-1)  rnd(0)  rand(1)  参数负数,零,和正数 

    Sub TEST4()
      Randomize
      For i = 1 To 3
        Debug.Print Rnd(-1)
      Next
    End Sub
    Sub TEST5()
      Randomize
      For i = 1 To 3
        Debug.Print Rnd(0)
      Next
    End Sub
    Sub TEST6()
      Randomize
      For i = 1 To 3
        Debug.Print Rnd(2)
      Next
    End Sub
    • 最左边是test1的结果 (无论点不点停止后开始,永远都是相同的)
    • 第2个是test2 一直点运行的结果(rnd(1) 会取上次的,这次运行过程中会一样)
    • 第3个是test2的结果
    • 第4个是test3 点一次运行,点一次停止后的结果,每次都会不一样
    • 第5个是test3 点一次运行,点一次停止后的结果,每次都会不一样

           

     

    3.5 配合 randomize  直接用 rnd 和 rnd(-1)  rnd(0)  rand(1)的总结

    • randomize  默认缺省会用时间当随机种子
    • randomize timer
    • 是一样的

     

    •  randomize  和 rnd(-1) 永远 生成相同的随机数,无论是继续生成下一个,还是重新开始随机。 参数-1 作用巨大
    •  randomize  和 rnd(0)  生成最近生成的数。也就是继续生成下一个的时候会是一样的上次的。重新开始也不一样,因为随机种子不同的,下次的第1个不同了!
    • 但是往下运行,还是会生成和这次结束前上1个一样的
    •  randomize  和 rnd(1) 生成下一个数,且生成的下一个会不一样。但是,重新开始因为随机种子不同,会完全一样的随机序列。
    •  randomize  和rnd 同正数的

     

    4 总结

    • 如果想永远生成相同的随机数,就用rnd(-1) 但是这么做没意义吧?
    • 如果想每次生成的随机数,本次程序运行结束前都一样,下次计算时不一样。就用  randmize  和 rnd(0)
    • 如果想永远生成不同的随机数,无论是序列内,还是在不同的环境重新运行都不同,就用   randmize  和 rnd(1) 或 randmize 和 rnd  缺省就可以。

     

     

    展开全文
  • VBA编程实现不重复随机数输出。VBA里的随机函数是RND,在工作表中随机函数是RAND,一字之差,可要记好了。RND取值范围是[0,1),意思是0和1之间的一个随机数,包含0,但不包含1。 1、用法 语法:Rnd[(number)]  如果...

    作者:iamlasong

    VBA编程实现不重复随机数输出。VBA里的随机函数是RND,在工作表中随机函数是RAND,一字之差,可要记好了。RND取值范围是[0,1),意思是0和1之间的一个随机数,包含0,但不包含1。

    1、用法

    语法:Rnd[(number)]
      如果 number 的值是 Randomize 生成
      小于 0 ,每次都使用 number 作为随机数种子得到的相同结果。
      大于 0 ,以上一个随机数为种子产生下一个随机数。
      等于 0 ,产生与最近生成的随机数相同的随机数。
      省略, 以上一个随机数为种子产生下一个随机数(同大于0)。

    说明:
      Rnd 函数返回小于 1 但大于或等于 0 的值。
      number 的值决定了 Rnd 生成随机数的方式。
      对最初给定的种子都会生成相同的数列,因为每一次调用 Rnd 函数都用数列中的前一个数作为下一个数的种子。
      在调用 Rnd 之前,先使用无参数的 Randomize 语句初始化随机数生成器(若带参数,则产生由参数对应的一个特定序列的随机数),该生成器具有根据系统计时器得到的种子。如果不使用Randomize 语句,那么每次执行程序时产生的随机数序列是相同的。

      Rnd 后面跟一个负数时,同样的参数可以得到完全相同的两个序列,例如,rnd -1执行后用rnd取1000个随机数,然后再执行rnd -1,然后再用rnd取1000个随机数,这1000个随机数和前面1000个完全相同。为了得到不同的序列,可以用不同的负数,也可以在rnd -1后面执行Randomize number。注意,要得到相同的序列,两次Randomize后面的number必须相同。这种方法用途之一就是用于加密和解密。
      关于产生相同的随机序列总结一下:1、Rnd(-1)后取随机数与再次执行Rnd(-1)取的随机数相同;2、Rnd(-1)后取随机数与再次执行Rnd(-2)取的随机数不同;3、Rnd(-1)和Randomize 1后取随机数与再次执行Rnd(-1)和Randomize 1取的随机数相同;4、Rnd(-1)和Randomize 1后取随机数与再次执行Rnd(-1)和Randomize 2取的随机数不同

      为了生成某个范围内的随机整数,可使用以下公式:
      Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
      这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。
      注意:若想得到重复的随机数序列,在使用具有数值参数的 Randomize 之前直接调用具有负参数值的 Rnd。使用具有同样 number 值的 Randomize 是不会得到重复的随机数序列的。

    2、无重复随机数算法一

    这是最简单的算法,每产生一个随机数,就和已有的比较,如果已经存在,则重新产生。比较适合从一个大范围里面抽出一小部分数据,比如,从题库中抽取试题。

     

    ' 产生20个1-100之间的不重复随机数
    Public Sub RndNumberNoRepeat1()
        
        Dim RndNumber, temp(20), i, k, Maxrec As Integer
        
        Randomize (Timer)           '初始化随机数生成器
        Maxrec = 100
        
        
        ' 从A21开始输出随机数
        k = 0
        Do While k < 20
            RndNumber = Int(Maxrec * Rnd) + 1
            temp(k) = RndNumber
            Cells(k + 21, 1) = RndNumber
            For i = 0 To k - 1
                If temp(i) = RndNumber Then Exit For
            Next i
            If i = k Then k = i + 1
            'MsgBox "随机数:" & RndNumber
        Loop
      
    End Sub
    

     

     

    3、无重复随机数算法二

    这个算法比较巧妙,需要细细体会,才能知道真谛。这个算法不会重复产生随机数,但需要一个占位数组。比较适合输出范围之内所有数值的场合,比如,随机发牌。

    ' 产生20个1-100之间的不重复随机数
    Sub RndNumberNoRepeat2()
      Dim RndNumber, TempArray(99), i As Integer
      Randomize (Timer)           '初始化随机数生成器
      For i = 0 To 99            '产生包含1-100的不重复的随机数列
          TempArray(i) = i
      Next i
      For i = 99 To 80 Step -1
         RndNumber = Int(i * Rnd)
         '从A21开始输出这些数字
         Cells(120 - i, 1) = TempArray(RndNumber) + 1
         TempArray(RndNumber) = TempArray(i)
      Next i
    End Sub
    

    4、无重复随机数算法三

    这个算法使用字典对象完成去重复,和第一个算法差不多,但程序看上去简洁一点,嗯,起码新颖一点。

     

    ' 产生20个1-100之间的不重复随机数
    Sub RndNumberNoRepeat3()
    Dim d As Object   'New Dictionary
    Dim s As Integer
    
    Randomize (Timer)           '初始化随机数生成器
    Set d = CreateObject("Scripting.Dictionary")
    
    Do Until d.Count = 20
        s = Int(Rnd * 100 + 1)
        d(s) = ""
    Loop
    [a21].Resize(d.Count, 1) = Application.Transpose(d.Keys)
    End Sub
    


    附:VBA中Dictionary对象使用小结

    Dim dict

    ' 创建Dictionary
    Set dict = CreateObject("Scripting.Dictionary")

    ' 增加项目
    dict.Add "A", 300
    dict.Add "B", 400
    dict.Add "C", 500

    ' 统计项目数
    n = dict.Count

    ' 删除项目
    dict.Remove ("A")

    ' 判断字典中是否包含关键字
    dict.exists ("B")

    ' 取关键字对应的值,注意在使用前需要判断是否存在key,否则dict中会多出一条记录
    Value = dict.Item("B")

    ' 修改关键字对应的值,如不存在则创建新的项目
    dict.Item("B") = 1000
    dict.Item("D") = 800

    ' 对字典进行循环
    k = dict.keys
    v = dict.Items
    For i = 0 To dict.Count - 1
    key = k(i)
    Value = v(i)
    MsgBox key & Value
    Next

    ' 删除所有项目
    dict.Removeall

     

     

     

    实例:

     

    Sub 宏1()

    Set dic = CreateObject("Scripting.Dictionary") '字典
    For i = 1 To 10000
    If Not i Like "*4*" Then
    dic.Add i, "" '如果不包含“1”
    End If
    Next
    Range("a2").Resize(dic.Count, 1) = Application.WorksheetFunction.Transpose(dic.keys) '从A2单元开始向下放置
    End Sub


    =========================================================================
    又 Tranpose工作表函数的用法实例


    '把一行多列的二维数组转换成一维数组
    Sub test()
    Dim arr, arrt
    arr = Range("a1:j1")
    arrt = WorksheetFunction.Transpose(WorksheetFunction.Transpose(arr))
    Stop
    End Sub
    首先看看TRANSPOSE函数的基础用法。官方帮助说明,TRANSPOSE函数可返回转置单元格区域,即将行单元格区域转置成列单元格区域,反之亦然。


      TRANSPOSE函数语法是:TRANSPOSE(array)
      Array参数是需要进行转置的数组或工作表上的单元格区域。所谓数组的转置就是,将数组的第一行作为新数组的第一列,数组的第二行作为新数组的第二列,以此类推。

     

     

     

     

     

    展开全文
  • VBA编程产生不重复随机数(转载)

    千次阅读 2019-06-04 14:39:27
    Randomize (Timer) '初始化随机数生成器 Maxrec = 100 ’ 从A21开始输出随机数 k = 0 Do While k RndNumber = Int(Maxrec * Rnd) + 1 temp(k) = RndNumber Cells(k + 21, 1) = RndNumber For i = 0 To k -...
  • 实际上,是很多使用Excel 的朋友有这样的需求,希望能产生一些随机数,大家知道可以用Rand函数来产生它,但是这个函数是易失的,就是说会不断地计算。朋友们可能希望第一次让它随机产生,而后就固定了。所以,这就...
  • Option ExplicitFunction getRandom(total As Integer, max As Integer, num As Integer) As Boolean'total是最后要得到的总和,max是最大不能超过的数,num是产生多少个随机数Dim ranNum As Single '随机数Dim ...
  • 三个vba生成不重复随机整数的案例

    千次阅读 2016-08-15 17:52:20
    内容提要:文章提供三个vba代码生成不重复随机数的案例供学习。对Excel感兴趣的朋友可加Excel学习交流群:284029260(www.itblw.com) vba不重复随机数案例一: 下面的代码,将在A1:A5000单元格产生1-5000的不...
  • 数组:定义数组:  Dim arr(30 To 50) As Single 定义数组,从30到50,定义为浮点型~  arr(30) = 34.3 ...产生随机数,但是随机数要不同(1到20之间产生10个不同的随机数) Sub sdlkfjl...
  • VBA研究】生成随机密码

    千次阅读 2015-08-11 17:19:37
    函数实现的流程是:用一个变量保存所有用到的字符,然后根据级别取不同的子串,最后产生随机数,从子串中取出字符合并出随机密码。程序如下: '生成密码并保存到当前工作表中 Sub GetPassword() ...
  • Function 随机试题() '产生随机数代码,40个随机数字从1~100中取'1、声明变量Dim dx As Integer '随机单选题数值Dim dxjh As New Collection '随机单选题数值集合,不重复Dim dxzsl As Integer '单选题库总数量Dim ...
  • 1、程序中如果只用Rnd取随机数时,每次执行都会产生相同的随机数序列。 2、Randomize可以让每次执行程序产生不同的序列,因为该语句用计时器当前值做随机序列的种子。 3、同一个程序中Randomize number执行两次...
  • 产生两个及更多范围的随机数。可以用于制作一份随机数据或随机表单。一共讲解了RANDBETWEEN()、RAND()、CHOOSE()、CHAR()、Round()、Trim()、Chr()、Str()、DataSerial()、TimeSerial()、Foramt()这11个Excel函数的...
  • Excel之产生不重复的随机整数

    千次阅读 2017-11-29 15:10:12
    我们知道rand或者randbetween函数可以产生随机数,但是如果我们想要产生完全不重复的数该怎么办呢? 这时我们可以用VBA来解决问题。 按alt+f11打开宏编辑器,点选要处理的sheet. 新建脚本,粘贴内容如下:Sub t()...
  • 导读:一、校验码的防伪原理,二、校验码的应用需求,三、Excel生成校验码的方法,四、使用效果...校验码的生成,是通过随机数产生函数来实现的,即在每次操作的同时系统产生一个随机的不规则的唯一的数,不同机器...
  • 瓦斯流分析部分利用直方图法绘图,最小二乘法拟合曲线,χ2(k-1)分布函数对曲线拟合性检验,结合蒙特卡洛法及随机数产生方法,对瓦斯流量进行随机取样,进一步验证曲线拟合性,最终得到瓦斯流量概率分布函数,从而确定每...
  • │ │ 技巧195 产生规定范围内的随机数.xls │ │ 技巧196 求解多元一次方程.xls │ │ 技巧197 求出成绩最高分.xls │ │ │ ├─第20章-统计求和 │ │ 技巧198 设置目标数据的上下限.xls │ │ 技巧199 ...
  • VBSCRIPT中文手册

    热门讨论 2010-11-12 10:13:06
    Raise 方法 产生运行时错误。 Randomize 语句 初始化随机数发生器。 ReDim 语句 声明动态数组变量,并分配或重新分配过程级的存储空间。 RegExp 对象 提供简单正则表达式的支持。 Rem 语句 包含程序中的注释。 ...
  • vb Script参考文档

    2009-07-28 22:13:02
    Raise 方法 产生运行时错误。 Randomize 语句 初始化随机数发生器。 ReDim 语句 声明动态数组变量,并分配或重新分配过程级的存储空间。 RegExp 对象 提供简单正则表达式的支持。 Rem 语句 包含程序中的注释。 ...
  • VBSCRIP5 -ASP用法详解

    2010-09-23 17:15:46
    Raise 方法 产生运行时错误。 Randomize 语句 初始化随机数发生器。 ReDim 语句 声明动态数组变量,并分配或重新分配过程级的存储空间。 RegExp 对象 提供简单正则表达式的支持。 Rem 语句 包含程序中的注释。 ...
  • Raise 方法 产生运行时错误。 Randomize 语句 初始化随机数发生器。 ReDim 语句 声明动态数组变量,并分配或重新分配过程级的存储空间。 RegExp 对象 提供简单正则表达式的支持。 Rem 语句 包含程序中的注释。 ...
  • VBScript 语言参考

    2008-10-07 21:30:05
    Raise 方法 产生运行时错误。 Randomize 语句 初始化随机数发生器。 ReDim 语句 声明动态数组变量,并分配或重新分配过程级的存储空间。 RegExp 对象 提供简单正则表达式的支持。 Rem 语句 包含程序中的注释。 ...
  • Excel集成工具箱7.0是利用VBA(Visual Basic for Applications)语言编写的增强应用型插件。包括160个菜单功能和100个左右自定义函数,集160个工具于一身,但体积小于15MB。当安装集成工具箱后,如果您使用Excel ...
  • EXCEL集成工具箱V6.0

    2010-09-11 01:44:37
    Excel集成工具箱6.0是利用VBA(Visual Basic for Applications)语言编写的增强应用型插件。包括160个菜单功能和100个左右 自定义函数,集160个工具于一身,但体积小于15MB。当安装集成工具箱后,如果您使用Excel ...
  • Excel集成工具箱8.0是利用VBA(Visual Basic for Applications)语言编写的增强应用型插件。包括160个菜单功能和100个左右 自定义函数,集160个工具于一身,但体积小于15MB。当安装集成工具箱后,如果您使用Excel ...
  • Excel集成工具箱8.0是利用VBA(Visual Basic for Applications)语言编写的增强应用型插件。包括160个菜单功能和100个左右 自定义函数,集160个工具于一身,但体积小于16MB。当安装集成工具箱后,如果您使用Excel ...

空空如也

空空如也

1 2
收藏数 31
精华内容 12
关键字:

vba产生随机数