Excel 生成一个随机的5位数字,该数字不在数字列中

Excel 生成一个随机的5位数字,该数字不在数字列中,excel,random,vba,Excel,Random,Vba,我有一个5位数字的列表。我需要随机生成一个不属于此列表的5位数字。我想通过点击按钮或使用公式来实现这一点。 例如:如果这是excel中带有5位数字的A列 11111 11113 11115 点击按钮后,我想生成一个唯一的5位数字,该数字不在此列中。 我正在使用此函数,但它仅与第一个单元格匹配。当我点击我的按钮时,它会给出从11110到11116的所有数字,除了11111。我需要它检查完整列并返回唯一值 Private Sub CommandButton1_Click() Dim

我有一个5位数字的列表。我需要随机生成一个不属于此列表的5位数字。我想通过点击按钮或使用公式来实现这一点。
例如:如果这是excel中带有5位数字的A列

11111  
11113  
11115  
点击按钮后,我想生成一个唯一的5位数字,该数字不在此列中。 我正在使用此函数,但它仅与第一个单元格匹配。当我点击我的按钮时,它会给出从11110到11116的所有数字,除了11111。我需要它检查完整列并返回唯一值

Private Sub CommandButton1_Click()

Dim rw As Long
    For rw = 1 To 1
        Cells(rw, 2) = Int((11116 - 11110 + 1) * Rnd + 11110)
        Do Until Cells(rw, 2).Value <> Cells(rw, 1).Value
            Cells(rw, 2) = Int((11116 - 11110 + 1) * Rnd + 11110)
        Loop
    Next rw
End Sub
Private子命令按钮1\u单击()
变暗rw为长
对于rw=1到1
单元格(rw,2)=Int((11116-11110+1)*Rnd+11110)
直到单元格(rw,2)完成。值单元格(rw,1)。值
单元格(rw,2)=Int((11116-11110+1)*Rnd+11110)
环
下一个rw
端接头
试试这个

Dim rw As Long
For rw = 1 To 1
    Rnd_Num = Int((11116 - 11110 + 1) * Rnd + 11110)
    Do Until Columns(1).Find(Rnd_Num) Is Nothing
        Rnd_Num = Int((11116 - 11110 + 1) * Rnd + 11110)
    Loop
    Cells(rw, 2) = Rnd_Num
Next rw
试试这个

Dim rw As Long
For rw = 1 To 1
    Rnd_Num = Int((11116 - 11110 + 1) * Rnd + 11110)
    Do Until Columns(1).Find(Rnd_Num) Is Nothing
        Rnd_Num = Int((11116 - 11110 + 1) * Rnd + 11110)
    Loop
    Cells(rw, 2) = Rnd_Num
Next rw