2016-11-13 42 views
-2

我有一個客戶端代碼組合框,鏈接到表 - ClientT。訪問組合框中的VBA隨機值

當我點擊一個按鈕randomcmd我想隨機客戶端代碼出現在組合框。

我的想法是使用VBA代碼來查找ClientT中客戶端的最大數量,然後使用Rnd函數從最大值和0之間選擇一個數字,然後將該數字轉換爲列表中的值。

我只是找不到任何類似的代碼來使用。到目前爲止,我所有的數字都是隨機產生的。

Private Sub Randomcmd_Click() 
    ClientCodecmb = Int(999 * Rnd) + 1 
End Sub 

請幫忙。

回答

0

如果客戶id是組合框的第一列,這是綁定列,這會做:

Private Sub Randomcmd_Click() 

    Dim MaxCustomerId = 1000 ' Adjust as needed. 

    Me!ClientCodecmb.Value = Int((MaxCustomerID + 1) * Rnd 

End Sub 
0
ClientCodecmb = DLookup("[ClientCode]", "ClientT", "Int((DMax('[Autonumber]', 'ClientT')) * Rnd) + 1 = [Autonumber]") 

我添加了一個自動編號字段的表和上面的代碼工作。 查找客戶端代碼,其中最大自動編號是隨機的,並且=表中的自動編號。

+0

好吧,有點。無論何時關閉並重新啓動應用程序,組合框都將選擇相同的客戶序列。 – Gustav