生成随机代码 - 混合数字和字母

Generate random code - mixed number & alphabet

我想使用用户表单记录用户数据。

在第一个文本框中,我将插入用户名。
第二个文本框是他们的 ID。

在第三个文本框中,我想通过单击 'Generate' 按钮生成一个 5 个字符 ID/code(混合数字和字母表)(但我不知道编码是什么)。

单击 'Add user' 后,我希望将数据填充到 Excel sheet 中。我想在 A 列中插入数字 1、2、3...,在 B 列中插入今天的日期(添加用户详细信息时)。然后是在 C、D 和 E 列的用户表单中添加的数据。

这是我想要的数据:

这是我从网站上复制的代码。

Private Sub CommandButton2_Click()

Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("Database")

'find first empty row in database
iRow = ws.Cells.Find(What:="*", SearchOrder:=xlRows, _
SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1

'check for a Name number
If Trim(Me.TextBox1.Value) = "" Then
    Me.TextBox1.SetFocus
    MsgBox "Please complete the form"
    Exit Sub
End If

'copy the data to the database
ws.Cells(iRow, 1).Value = Me.TextBox1.Value
ws.Cells(iRow, 2).Value = Me.TextBox2.Value
ws.Cells(iRow, 3).Value = Me.TextBox3.Value

MsgBox "Data added", vbOKOnly + vbInformation, "Data Added"

'clear the data
Me.TextBox1.Value = ""
Me.TextBox2.Value = ""
Me.TextBox3.Value = ""
Me.TextBox1.SetFocus

End Sub

这将生成一个包含五个字符的随机数字和字母字符串。您可以分配给您的按钮并输出到您的表单而不是消息框。

Sub x()

Dim vOut(1 To 5), i As Long, n As Long

Randomize

For i = 1 To 5
    n = WorksheetFunction.RandBetween(1, 2)
    If n = 1 Then
        vOut(i) = WorksheetFunction.RandBetween(0, 9)
    Else
        vOut(i) = Chr(64 + WorksheetFunction.RandBetween(1, 26))
    End If
Next i

MsgBox Join(vOut, "")

End Sub