这个需要用VBA么?Excel函数就搞定了。
当然录制一个宏也没问题。
准备好数据,点击数据分析按钮,如图操作。
我这准备的数据是5个,总概率是1(0.1,0.15,0.2,0.25,0.3),分别对应值(1,2,3,4,5)
数值与概率输入区域必须是两列,左边为值,右边为概率。
结果你就选个起始单元格输出吧。
下面是宏脚本
Application.Run "ATPVBAEN.XLAM!Random", ActiveSheet.Range("$A$7"), 5, 1, _
7, , ActiveSheet.Range("$A$1:$B$5")