我需要开发一个模型使用蒙特卡洛协议,将随机开始时间0100和2300.我试图在Microsoft Access中创建此程序,将产生一个随机开始时间以及一个随机活动类型(Transit,Observe,Query)。活动类型不仅应该是随机的,还应该加权(Transit = 0.25,Observe = 0.35,Query = 0.40)。我正在编写程序,以便用户可以按下命令按钮以生成至少有30个随机开始时间和活动类型(即1700 Transit,1500 Query等)的列表的报告。我知道如何在Access中创建一个随机数字生成器,但我很困难,因为我希望用户能够生成多个开始时间和活动类型。例如,我想问一个问题:“你会喜欢多少个开始时间?”和“你想要多少种活动类型?”在文本框中。如果我可以创建用户朋友界面,我也愿意在Excel中进行操作。任何帮助将不胜感激Microsoft Access VB随机生成器
0
A
回答
0
Excel或Access ...它对应用程序开发无关紧要,无论如何它都是VBA。问题是:最终会为最终用户提供哪些服务:Excel或Access。我个人从来没有考虑访问的终端用户工具本身(比如没有开发的应用程序了。所以我清楚地宁愿的Excel在这种情况下
所以战略上,你想有一个对话窗口,
- 捕捉用户输入
- 产生一个或多个组随机数
- 呈现结果给终端用户
因此,在Excel或Access中,步骤1,2是完全相同的 - 打开表单编辑器,移动文本字段,选项按钮和命令按钮(对于Access不绑定到表),然后编写代码按钮来创建输出
1
你没有指定你想要的输出,但希望这段代码能让你开始创建随机时间&加权活动的过程。您可以确定用户界面。
Sub CreateRandom()
Dim intNumTimesNeeded As Integer
Dim y As Integer
Dim activity As String
Dim StartMinute As Integer
Dim FirstTime As Integer
Dim EndTime As Integer
Dim StartTime As Date
FirstTime = 1 * 60 ' first time is 1:00 am
EndTime = 23 * 60 ' last time is 11:00 pm
intNumTimesNeeded = 10
For x = 1 To intNumTimesNeeded
Randomize
y = Rnd() * 100
Select Case y
Case Is >= 60
activity = "Query"
Case Is > 25
activity = "Observe"
Case Else
activity = "Transit"
End Select
StartMinute = Int((EndTime - FirstTime + 1) * Rnd() + FirstTime)
StartTime = DateAdd("n", StartMinute, "01/01/1900")
Debug.Print Format(StartTime, "hh:mm") & " - " & activity
Next
End Sub
相关问题
- 1. Microsoft Access 2003 - 表达式生成器
- 2. Microsoft Access表达式生成器
- 3. 快速随机生成器
- 4. 随机报价生成器
- 5. 随机文本生成器
- 6. Javascript随机生成器
- 7. 随机诗生成器
- 8. 随机JSON生成器
- 9. 随机生成器Objective-C
- 10. 随机测验生成器
- 11. 随机生成器和CUDA
- 12. 随机季节生成器
- 13. 随机批生成器Tensorflow
- 14. Haskell的随机发生器:链生成的随机值
- 15. 需要帮助为一个搜索机器人生成随机单词VB 2010
- 16. 生成随机数
- 17. ArrayList随机生成
- 18. 随机数生成
- 19. Javascript随机生成
- 20. 生成随机ASCII
- 21. 生成随机数
- 22. 生成随机图
- 23. C:生成随机迷宫
- 24. Microsoft Access查询生成表的SQL
- 25. 随机数生成机制
- 26. C++为psudo随机数生成器生成一个很好的随机种子
- 27. 随机2D城市景观生成器,我如何随机生成?
- 28. 通过随机字符生成生成随机名字太慢
- 29. 从数组中随机生成一个元素VB
- 30. vb生成表单位置的随机数