VBA的随机数生成:整数范围内随机(更好些),小数范围内随机
1用EXCEL生成随机数rand() 是 [0,1),随机到的是小数randbetween(a,b) 是 [a,b],但是只能是整数如果想在EXCEL公式用randbetween()随机小数呢?
随机,randbetween()只能随机整数,如果是要小数,那就先乘100,随机完之后再除100这样处理randbetween(a,b) 是 [a,b]RANDBETWEEN(1000*G49,1000*H49)/10001.1rand()用法
rand()随机范围是[0,1),系统定义位左闭右开区间rand()=[0,1) 0-1之间的所有小数100*rand()=[0,100) 所有整数和小数int(100*rand())=[0,100) =[0,99] 所有整数int((100-1)*rand()+1)=int([0,99)+1)=[1,100)=[1,99] 所有整数int(100*rand())+1=[0,100)+1 =[1,101)=[1,100] 所有整数int(1+(100-1+1)*rand())=int(1+100*rand())=[1,101)=[1,100] 所有整数2RANDBETWEEN
只随机整数
正确写法
RANDBETWEEN(1000*G49,1000*H49)/1000
错误写法RANDBETWEEN(G49,H49)*1000/1000
可以间接实现if的效果if p