tft每日頭條

 > 科技

 > access中vba程序編寫

access中vba程序編寫

科技 更新时间:2024-06-29 03:55:58

access中vba程序編寫?Dim rs1 As DAO.RecordsetPrivate Sub Command生成數字_Click(),今天小編就來說說關于access中vba程序編寫?下面更多詳細答案一起來看看吧!

access中vba程序編寫(Access數據庫功能模塊講解)1

access中vba程序編寫

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

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved