| 
                                    
                                    
                                    
                                    
                                    
                                    
                                    
                                     
                                        
                                     
                                    
                                        
                                        - 超级版主
 
                                        
                                        - 1228894
 
                                        - 27060
 
                                        - 25
 
                                        - 8236 朵
 
                                        - 36314 个
 
                                        - 4931 个
 
                                        - 421340
 
                                        - 2012-07-18
 
                                     
                                    
                                    
                                    
                                 | 
                                
                                    
                                        
                                            
                                                
                                                1#
                                                
                                            
                                        
                                        
                                            
                                                
                                                
                                                t
                                                T
                                             
                                            
                                            
                                            
                                                
                                                发表于 2022-06-03 16:03
                                            
                                                                                        
                                            | 
                                            
                                            
                                            |只看楼主
                                            
                                         
                                     
                                    
                                    
                
                
                
                
                    
                    
                    
                   
                    
                        
                        
                        实现效果:随机基于的命令:
 - Randomize'初始化[不进行初始化将出现重复或有规律数据]
  - Rnd'返回一个0-1的数值
   随机的公式:- 随机数 = Int((最大值 - 最小值 + 1) * Rnd + 最小值)
  
  复制代码'即如果要随机一个-5到1的数字 公式应该为 - 随机数 = Int((1 +5 + 1) * Rnd -5)
  
  复制代码 将其改成函数方便调用:- TracePrint 随机数(1, 3)
  
  
- Function 随机数(最小值, 最大值)
  
- Randomize
  
- 随机数 = Int((最大值 - 最小值 + 1) * Rnd + 最小值)
  
- End Function
  
  复制代码 扩展之随机数字:- TracePrint 随机数字(5,False ,1, 5)'参数2写true 随机出来的数字将有重复
  
- Function 随机数字(数量,是否重复,最小值, 最大值)
  
-     Dim 返回值
  
-     Randomize
  
-     If 是否重复 = True Then 
  
-         For 数量
  
-             返回值 = Int((最大值 - 最小值 + 1) * Rnd + 最小值)
  
-             随机数字 = 随机数字 & 返回值
  
-         Next 
  
-     Else 
  
-         For 数量
  
-             Do
  
-                 返回值 = Int((最大值 - 最小值 + 1) * Rnd + 最小值)
  
-             Loop Until InStr(随机数字, 返回值) < 1
  
-             随机数字 = 随机数字 & 返回值
  
-         Next 
  
-     End If
  
- End Function
  
  复制代码 扩展之随机字母:- TracePrint 随机字母(6,False,3)
  
- Function 随机字母(数量,是否重复,选项1至3)'1-3"1大写、2小写、3大小写"
  
- Dim 返回值
  
- Randomize
  
- If 选项1至3 = 1 and 是否重复 = False Then 
  
- For 数量
  
- Do 
  
- 返回值 = Int((122 - 97 + 1) * Rnd + 97)
  
- Loop Until InStr( 随机字母, chr(返回值)) < 1
  
- 随机字母 = 随机字母 & chr(返回值)
  
- Next 
  
- ElseIf 选项1至3 = 1 and 是否重复 = True Then
  
- For 数量
  
- 返回值 = Int((122 - 97 + 1) * Rnd + 97)
  
- 随机字母 = 随机字母 & chr(返回值)
  
- Next 
  
- End If
  
- If 选项1至3 = 2 and 是否重复 = False Then 
  
- For 数量
  
- Do 
  
- 返回值 = Int((90 - 65 + 1) * Rnd + 65)
  
- Loop Until InStr( 随机字母, chr(返回值)) < 1
  
- 随机字母 = 随机字母 & chr(返回值)
  
- Next 
  
- ElseIf 选项1至3 = 2 and 是否重复 = True Then
  
- For 数量
  
- 返回值 = Int((90 - 65 + 1) * Rnd + 65)
  
- 随机字母 = 随机字母 & chr(返回值)
  
- Next 
  
- End If
  
- If 选项1至3 = 3 and 是否重复 = False Then 
  
- For 数量
  
- Do
  
- If rnd > 0.5 Then 
  
- 返回值 = Int((90 - 65 + 1) * Rnd + 65)
  
- Else 
  
- 返回值 = Int((122 - 97 + 1) * Rnd + 97) 
  
- End If
  
- Loop Until InStr( 随机字母, chr(返回值)) < 1
  
- 随机字母 = 随机字母 & chr(返回值)
  
- Next 
  
- ElseIf 选项1至3 = 3 and 是否重复 = True Then
  
- For 数量
  
- If rnd > 0.5 Then 
  
- 返回值 = Int((90 - 65 + 1) * Rnd + 65)
  
- Else 
  
- 返回值 = Int((122 - 97 + 1) * Rnd + 97) 
  
- End If
  
- 随机字母 = 随机字母 & chr(返回值)
  
- Next 
  
- End If 
  
- End Function
  
  复制代码 扩展之随机颜色:- TracePrint 随机颜色()
  
- Function 随机颜色()
  
- Randomize
  
- Dim 颜色文本库
  
- 颜色文本库="0123456789abcdef"
  
- For 6
  
- 随机颜色=随机颜色&Mid(颜色文本库,Int((Len(颜色文本库) - 1 + 1) * Rnd + 1),1)
  
- Next
  
- End Function
  
  复制代码 扩展之随机中文:- TracePrint 随机简体汉字(5)
  
- Function 随机简体汉字(数量)
  
- Dim 返回值
  
- For 数量
  
- Randomize
  
- 返回值=返回值 & chr(-12160+int(126*rnd+1))
  
- Next
  
- 随机简体汉字 = 返回值
  
- End Function
  
  复制代码 扩展之随机日文:- TracePrint 随机日文(5)
  
- Function 随机日文(数量)
  
- Dim 返回值
  
- Randomize
  
- For 数量
  
- 返回值=返回值&Chr(-(Int((2 * Rnd) + 1)*256+Int((83 * Rnd) + 1)+22796))
  
- Next
  
- 随机日文=返回值
  
- End Function
  
  复制代码 扩展之随机日期:- TracePrint 随机日期("2022/06/01 12:00:00","2022/06/07 12:00:00")
  
- Function 随机日期(最小随机日期, 最大随机日期)
  
- Dim 随机日期_间隔天数, 年, 月, 日
  
- Randomize
  
- 随机日期_间隔天数 = DateDiff("d", 最小随机日期, 最大随机日期)
  
- If 随机日期_间隔天数 < 0 Then Exit Function
  
- Randomize
  
- 随机日期_天数 = Int((随机日期_间隔天数 + 1) * Rnd)
  
- 随机日期 = DateAdd("d", 随机日期_天数, 最小随机日期)
  
- 年=Year(随机日期): 月=Month(随机日期) :日=Day(随机日期)
  
- If Len(月) = 1 Then 月 = "0" & 月
  
- If Len(日) = 1 Then 日 = "0" & 日
  
- 随机日期 = 年&"/"&月&"/"&日
  
- End Function
  
  复制代码 扩展之随机按键盘:- KeyPress 随机按键()/1, 1
  
  
- Function 随机按键()
  
-     Randomize
  
-     随机按键 = cstr(int((90 - 55 + 1) * rnd + 55))
  
- End Function
  
  复制代码 扩展之随机并附带小数:- Randomize
  
- TracePrint 3 + Round(Rnd, 4)
  
  复制代码- Randomize
  
- A = FormatNumber((9 * rnd) + 16, 2)
  
- TracePrint A
  
  复制代码 非常见写法[未使用Randomize、Rnd]:Do     数 = 随机数(1, 3)     TracePrint 数     Delay 10 Loop Function 随机数(小, 大)       Set objRandom = CreateObject("System.Random")     随机数 = objRandom.Next_2(小, 大+1) End Function   
                        
                     
                    
                    
                    
                    
                    
                    
                    
                    
                        
                        
                     
                     |