我需要開發一個模型使用蒙特卡洛協議,將隨機開始時間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生成表單位置的隨機數