• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 辦公軟件教程 > 詳細頁面

        Access設計抽獎系統

        Access設計抽獎系統

        更新時間:2022-05-05 文章作者:未知 信息來源:網絡 閱讀次數:

        Microsoft Office Access是由微軟發布的關系數據庫管理系統。它結合了 MicrosoftJet Database Engine 和 圖形用戶界面兩項特點,是 Microsoft Office 的系統程序之一。Microsoft Office Access是微軟把數據庫引擎的圖形用戶界面和軟件開發工具結合在一起的一個數據庫管理系統。它是微軟OFFICE的一個成員, 在包括專業版和更高版本的office版本里面被單獨出售。2018年9月25日,最新的微軟Office Access 2019在微軟Office 2019里發布。

           一、系統組成及原理

          抽獎系統主要由來賓登記、獎票管理、幸運抽獎、獲獎查詢四個基本模塊構成,登記模塊登記參加抽獎人員,獎票管理模塊初始化參加抽獎人員名單,抽獎模塊實現抽獎功能,獲獎查詢模塊查詢獲獎結果。其中,抽獎模塊中可以實現獎勵等級、總抽獎數、每一次抽獎數的控制。系統架構框圖如圖1。

        Access設計抽獎系統 三聯

          圖1 系統架構

          二、系統初始化

          來賓登記模塊中已經收錄了參加抽獎的人員名單以及所屬部門,在獎票管理模塊中,當點擊初始化按鈕時通過內部程序設計首先把上次的抽獎結果清空,同時利用Rnd在參加抽獎的人員名單前隨機生成一系列的序號,為幸運抽獎模塊中的隨機抽獎做準備[1]。主要初始化程序代碼如下:

          以下為引用的內容:

          DoCmd.SetWarnings False

          DoCmd.OpenQuery "刪除對獎票號", acNormal, acEdit

          DoCmd.OpenQuery "追加對獎票號", acNormal, acEdit

          DoCmd.SetWarnings True

          Set qrs = CurrentDb.OpenRecordset("對獎票號")

          qrs.MoveFirst

          i = 1

          Do While Not qrs.EOF

          qrs.Edit

          qrs!序號 = Int((211 - 1) * Rnd)

          qrs!對獎號碼 = i

          qrs.Update

          i = i + 1

          qrs.MoveNext

          Loop

          MsgBox ("對獎名單初始化完畢。")

          qrs.Close

          抽獎功能的實現

          通過抽獎模塊實現最終抽獎功能。

          通過獎勵等級組合框控制抽獎等級,通過抽獎數量組合框控制每批次抽獎數量,通過總抽獎數組合框控制總抽獎數。當獎勵等級分別為一、二、三等獎時,抽獎數量和總抽獎數默認值分別為5、10、10和10、30、50。各組合框的具體數值也可以通過上下箭頭控制。抽獎界面如圖2。

        Access設計抽獎系統

          圖 2 抽 獎 界 面

          其程序設計比較簡單,主要程序如下:

          以下為引用的內容:

          ……

          If Me!獎勵等級.Value = 1 Then

          Me!總數量.Value = 10

          End If

          If Me!獎勵等級.Value = 2 Then

          Me!總數量.Value = 30

          End If

          If Me!獎勵等級.Value = 3 Then

          Me!總數量.Value = 50

          End If

          Forms!抽獎.Q_抽獎統計.Requery

          If Me!獎勵等級.Value = 1 Then

          Me!抽獎數量.Value = 5

          End If

          If Me!獎勵等級.Value = 2 Or Me!獎勵等級.Value = 3 Then

          Me!抽獎數量.Value = 10

          End If

          ……

          通過點擊開始按鈕開始抽獎,同時按鈕標題變為停止,再次點擊停止此批次抽獎,同時按鈕標題變為開始,繼續點擊開始下一批次抽獎,如此反復,直至完成總抽獎數,此時提示“抽獎總數已到”,如果未完成總抽獎數就開始另外一輪抽獎,則提示“抽獎限制”。

          內部抽獎主要解決隨機性和相對均衡兩個問題。系統初始化在參加抽獎人員名單前隨機生成了序號,通過查詢“號碼重排序”將參加抽獎人員名單按照序號升序排列,抽獎時按照序號順序抽獎,實現了隨機的要求。相對均衡要求大致按照各個部門人數占總人數的百分比來分配中獎人數,本系統采用各個部門占總人數的百分比乘以抽獎總數的方法來大致確定各個部門的中獎人數,有小數的數字通過程序設計進行四舍五入處理。需要注意的是,若使所有的部門中獎人數都要用四舍五入的方法進行處理則可能出現錯誤,為了避免這種情況需要選定一個部門,使其中獎人數等于總抽獎數減去其他各個部門中獎人數之和[2]。抽獎模塊的主要程序代碼如下:

          以下為引用的內容:

          N = 0

          cnt = Me!電科.Value + Me!電氣.Value + Me!自動化.Value + Me!通信.Value + Me!院辦.Value + Me!退休.Value

          Do While Me!抽獎數量.Value > N And Not qrs.EOF And cnt < Me!總數量.Value

          '電科抽獎

          ’四舍五入確定電科中獎數

          If Me!電科.Value < (Int(((unit1.姓名之Count / cnt1) * Me!總數量.Value + 0.5))) And N < Me!抽獎數量.Value And cnt < Me!總數量.Value Then

          If qrs.單位 = "電科" And qrs!批次.Value = 0 Then

          Me!電科.Value = Me!電科.Value + 1

          qrs.Edit

          qrs!獎勵等級.Value = Me!獎勵等級.Value

          qrs!批次.Value = Me!批次.Value

          qrs.Update

          N = N + 1

          End If

          Else

          End If

          ……

          '退休抽獎

          cnt = Me!電科.Value + Me!電氣.Value + Me!自動化.Value + Me!通信.Value + Me!院辦.Value + Me!退休.Value

          cnt2= Me!電科.Value + Me!電氣.Value + Me!自動化.Value + Me!通信.Value + Me!院辦.Value

          '剩余數量分配給退休

          If Me!退休.Value < Int((Me!總數量.Value – cnt2) And N < Me!抽獎數量.Value And cnt < Me!總數量.Value Then

          If qrs22.單位 = "退休" And qrs!批次.Value = 0 Then

          Me!退休.Value = Me!退休.Value + 1

          qrs.Edit

          qrs22!獎勵等級.Value = Me!獎勵等級.Value

          qrs22!批次.Value = Me!批次.Value

          qrs22.Update

          N = N + 1

          End If

          Else

          End If

          ……

          ’判斷是否完成抽獎

          cnt = Me!電科.Value + Me!電氣.Value + Me!自動化.Value + Me!通信.Value + Me!院辦.Value + Me!退休.Value

          If cnt = Me!總數量.Value Then

          MsgBox ("抽獎總數已到。")

          Me.可抽獎.Value = 0

          Else

          MsgBox ("抽獎限制。")

          End If

          ……

          結論

          本系統利用ACCESS數據庫,結合其內置VBA語言,探討了系統初始化、抽獎的隨機性和相對均衡性等關鍵問題,滿足了抽獎的要求。進行適當調整,該系統可以應用于多種抽獎場合。


        Microsoft Access在很多地方得到廣泛使用,例如小型企業,大公司的部門。

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 亚洲熟妇无码八AV在线播放| 国产小视频在线观看免费| 国产aⅴ无码专区亚洲av| 特级毛片爽www免费版| 亚洲妇女无套内射精| 成人免费a级毛片| 国产国拍亚洲精品mv在线观看| 亚洲免费无码在线| AA免费观看的1000部电影| 亚洲精品午夜无码专区| 在线观看特色大片免费网站| 亚洲∧v久久久无码精品| 亚洲精品视频在线观看免费| 亚洲色偷偷偷鲁综合| 久久免费动漫品精老司机| 亚洲视频欧洲视频| 无码日韩人妻av一区免费| 欧洲亚洲国产精华液| 亚洲免费综合色在线视频| 亚洲JLZZJLZZ少妇| 亚洲精品蜜桃久久久久久| 69av免费观看| 亚洲国产AV一区二区三区四区| 婷婷综合缴情亚洲狠狠尤物| 国产免费阿v精品视频网址| 久久青青草原亚洲av无码app| 丝袜足液精子免费视频| 亚洲黄色一级毛片| 日韩高清在线高清免费| 国产中文字幕在线免费观看| 亚洲乱码中文论理电影| 亚洲乱码中文字幕手机在线| 99热在线精品免费播放6| 亚洲AV成人无码网天堂| 亚洲成av人片天堂网| 岛国大片免费在线观看| a级毛片在线视频免费观看| 亚洲日韩一中文字暮| 亚洲精品乱码久久久久久蜜桃不卡| 歪歪漫画在线观看官网免费阅读 | 亚洲日韩国产精品第一页一区|