加入收藏 | 设为首页 | 会员中心 | 我要投稿 焦作站长网 (https://www.0391zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

生成随机数据 Access数据库功能模块讲解 VBA代码实例

发布时间:2023-01-11 13:31:37 所属栏目:MySql教程 来源:网络
导读: Dim rs1 As DAO.Recordset
Private Sub Command生成数字_Click()
Dim minint As Single
Dim maxint As Single
If Me.最小数字 "" And Me.最大数字 "" Then
minint = Me.最小数字
maxint

Dim rs1 As DAO.Recordset

Private Sub Command生成数字_Click()

Dim minint As Single

Dim maxint As Single

If Me.最小数字 "" And Me.最大数字 "" Then

minint = Me.最小数字

maxint = Me.最大数字

If minint >= maxint Then

MsgBox "最小数字要小于最大数字"

Exit Sub

End If

Else

MsgBox "请输入最大最小数字"

Exit Sub

End If

If Me.生成数量 < 1 Or Me.生成数量 = "" Then

MsgBox "生成数量必须大于0"

End If

Dim rndcount As Long

rndcount = Me.生成数量

DoCmd.SetWarnings (False)

Dim del_sql As String

del_sql = "Delete From 生成表"

DoCmd.RunSQL del_sql

Dim add_rs As DAO.Recordset

Set add_rs = CurrentDb.OpenRecordset("生成表", dbOpenTable)

With add_rs

Dim i

For i = 1 To rndcount

.AddNew

!生成结果.Value = 生成随机数字(minint,maxint)

.Update

Next i

.Close

End With

Set add_rs = Nothing

MsgBox "生成完成"

End Sub

Function 生成随机数字(ByVal minnum As Single数据库实例, ByVal maxnum As Single) As Single

Randomize

生成随机数字 = Round((maxnum - minnum + 1) * Rnd + minnum, 2)

End Function

Private Sub Command生成项目_Click()

Dim itemcount As Long

itemcount = Nz(DCount("项目", "随机项目"), 0)

If itemcount < 2 Then

MsgBox "随机项目必须大于1"

Exit Sub

End If

If Me.生成数量 < 1 Or Me.生成数量 = "" Then

MsgBox "生成数量必须大于0"

End If

Dim rndcount As Long

rndcount = Me.生成数量

DoCmd.SetWarnings (False)

Dim del_sql As String

del_sql = "Delete From 生成表"

DoCmd.RunSQL del_sql

Dim add_rs As DAO.Recordset

Set add_rs = CurrentDb.OpenRecordset("生成表", dbOpenTable)

With add_rs

Dim i

For i = 1 To rndcount

.AddNew

!生成结果.Value = 获取随机项目(itemcount)

.Update

Next i

.Close

End With

Set add_rs = Nothing

MsgBox "生成完成"

End Sub

Function 获取随机项目(ByVal maxnum As Long) As String

Dim Record_count As Long

Record_count = maxnum

Dim rnd_i As Long

Randomize

rnd_i = Int((Record_count - 1 + 1) * Rnd + 1)

rs1.MoveFirst

rs1.Move (rnd_i - 1)

获取随机项目 = rs1.Fields("项目").Value

End Function

Function 生成随机整数(ByVal minnum As Long, ByVal maxnum As Long) As Long

Randomize

生成随机整数 = Int((maxnum - minnum + 1) * Rnd + minnum)

End Function

Private Sub Command生成整数_Click()

Dim minint As Long

Dim maxint As Long

If Me.最小整数 "" And Me.最大整数 "" Then

minint = Me.最小整数

maxint = Me.最大整数

If minint >= maxint Then

MsgBox "最小整数要小于最大整数"

Exit Sub

End If

Else

MsgBox "请输入最大最小整数"

Exit Sub

End If

If Me.生成数量 < 1 Or Me.生成数量 = "" Then

MsgBox "生成数量必须大于0"

End If

Dim rndcount As Long

rndcount = Me.生成数量

DoCmd.SetWarnings (False)

Dim del_sql As String

del_sql = "Delete From 生成表"

DoCmd.RunSQL del_sql

Dim add_rs As DAO.Recordset

Set add_rs = CurrentDb.OpenRecordset("生成表", dbOpenTable)

With add_rs

Dim i

For i = 1 To rndcount

.AddNew

!生成结果.Value = 生成随机整数(minint, maxint)

.Update

Next i

.Close

End With

Set add_rs = Nothing

MsgBox "生成完成"

End Sub

Private Sub Form_Load()

Set rs1 = CurrentDb.OpenRecordset("随机项目", dbOpenTable)

End Sub

(编辑:焦作站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章