Access在人事管理中的應用省名師優(yōu)質課獲獎課件市賽課一等獎課件_第1頁
Access在人事管理中的應用省名師優(yōu)質課獲獎課件市賽課一等獎課件_第2頁
Access在人事管理中的應用省名師優(yōu)質課獲獎課件市賽課一等獎課件_第3頁
Access在人事管理中的應用省名師優(yōu)質課獲獎課件市賽課一等獎課件_第4頁
Access在人事管理中的應用省名師優(yōu)質課獲獎課件市賽課一等獎課件_第5頁
已閱讀5頁,還剩143頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第11章Access在人事管理中應用第1頁本章學習關鍵點系統(tǒng)功效設計系統(tǒng)模塊設計表字段設計表關系建立查詢設計窗體創(chuàng)建報表創(chuàng)建宏命令和VBA代碼創(chuàng)建系統(tǒng)調(diào)試系統(tǒng)運行與應用

第2頁11.1實例導航系統(tǒng)功效目標開發(fā)關鍵點第3頁11.1.1系統(tǒng)功效目標該系統(tǒng)有以下主要功效。新員工登記和員工資料修改。包含新員工個人資料詳細輸入、員工號分配和相關人事信息保留;還包含對現(xiàn)有員工工作資料進行創(chuàng)建和修改。人事變更統(tǒng)計。經(jīng)過該功效,實現(xiàn)對員工工作職位改變跟蹤和統(tǒng)計等。員工薪資情況查詢。經(jīng)過該功效,實現(xiàn)對員工薪金發(fā)放情況查詢,而且能夠按照各種福利薪金類別,打印出個人薪資報表。員工考勤情況查詢。經(jīng)過該功效,實現(xiàn)對員工考勤情況查詢等,從而為薪金計算提供參考依據(jù)等。報表管理。經(jīng)過該功效,實現(xiàn)報表生成和查看。報表又分為兩部分,一個是對員工工資發(fā)放情況進行統(tǒng)計,另一個是對員工考勤情況進行統(tǒng)計。其它統(tǒng)計查詢。允許管理者按各個部門、級別、員工類型、學歷、職位、性別等員工信息進行統(tǒng)計,從而幫助人事部(或人力資源部門)進行人事結構分析、年紀工齡結構分析等。第4頁11.1.2開發(fā)關鍵點了解數(shù)據(jù)表結構,掌握各數(shù)據(jù)表之間關系,熟悉查詢和窗體設計,比較清楚地了解人事管理流程,從而開發(fā)出完整人事管理系統(tǒng)。本章主要目標,就是想經(jīng)過建立一個完整人事管理系統(tǒng),介紹完整數(shù)據(jù)庫管理系統(tǒng)開發(fā)普通流程。第5頁11.2系統(tǒng)需求分析與設計需求分析模塊設計第6頁11.2.1需求分析需求主要有以下幾點。人事管理系統(tǒng)首先應該能夠對企業(yè)當前人事情況進行統(tǒng)計。包含企業(yè)和員工勞動關系、員工就職部門、主要工作職責、上級經(jīng)理等。其次,系統(tǒng)應該能夠對企業(yè)員工人事變更情況進行統(tǒng)計,并據(jù)此能夠靈活修改工作職責等各種人事情況信息。再次,系統(tǒng)應該能夠依據(jù)需要進行各種統(tǒng)計和查詢,比如查詢員工年紀、學歷等,方便給人力管理部門進行決議參考。最終,系統(tǒng)還應該對求職者信息進行對應管理,能夠發(fā)掘適當人才,加盟該企業(yè)。第7頁11.2.2模塊設計企業(yè)人事管理系統(tǒng)功效模塊能夠由五個部分組成,每一部分依據(jù)實際應用又包含不一樣功效。系統(tǒng)登錄模塊:在數(shù)據(jù)庫系統(tǒng)中設置系統(tǒng)登錄模塊,是維持系統(tǒng)安全性最簡單方法。在任何一個數(shù)據(jù)庫系統(tǒng)中,該模塊都是必需。員工人事登記模塊:經(jīng)過該模塊,實現(xiàn)對新員工統(tǒng)計輸入和現(xiàn)有員工統(tǒng)計修改。員工人事統(tǒng)計模塊:經(jīng)過該模塊,實現(xiàn)對員工人事變動統(tǒng)計和查看管理。統(tǒng)計查詢模塊、經(jīng)過該模塊,對企業(yè)當前員工人事信息進行查詢,比如薪資查詢、考勤情況查詢、學歷查詢、年紀查詢等。報表生成模塊:經(jīng)過該模塊,依據(jù)用戶需求和查詢結果生產(chǎn)對應報表。招聘管理模塊:經(jīng)過該模塊,主要對求職者信息進行保留和查詢,以方便招聘活動進行,發(fā)掘企業(yè)有用之材。第8頁11.3數(shù)據(jù)庫結構設計數(shù)據(jù)表結構需求分析結構空數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)表字段結構設計數(shù)據(jù)表表關系設計第9頁11.3.1數(shù)據(jù)表結構需求分析在該“人事管理系統(tǒng)”中,我們初步設計17張數(shù)據(jù)表,各個表存放信息以下所表示。“SwitchboardItems”表:主要存放主切換面板和報表面板顯示信息。“管理員”表:存放系統(tǒng)管理人員(普通是企業(yè)人事部人員)登記信息等?!皢T工信息”表:存放現(xiàn)有員工個人基本信息,比如姓名、性別、出生日期、所屬級別等。“部門信息”表:主要存放企業(yè)各個部門信息,比如部門編號、名稱、部門經(jīng)理等?!叭耸伦兏y(tǒng)計”表:存放員工職位變更信息,統(tǒng)計員工原職位和現(xiàn)職位。“班次配置”表:統(tǒng)計員工上班班次信息?!俺銮诮y(tǒng)計”表:統(tǒng)計全部員工天天出勤統(tǒng)計?!俺銮谂渲谩北恚航y(tǒng)計員工出勤信息。第10頁11.3.1數(shù)據(jù)表結構需求分析“級別工資配置”表:統(tǒng)計員工所處工資級別詳細信息?!凹影嘟y(tǒng)計”表:統(tǒng)計員工加班統(tǒng)計,以用于工資核實?!捌髽I(yè)工資發(fā)放統(tǒng)計”表:企業(yè)工資財務統(tǒng)計,保留已經(jīng)核發(fā)工資員工詳細內(nèi)容。“企業(yè)工資計算規(guī)則”表:保留企業(yè)內(nèi)部工資計算規(guī)則?!奥毼唤蛸N配置”表:保留企業(yè)內(nèi)部關于津貼詳細信息。“缺勤統(tǒng)計”表:統(tǒng)計全部員工缺勤信息。“月度出勤匯總”表:保留企業(yè)員工每個月出勤信息匯總?!昂灥浇y(tǒng)計”表:統(tǒng)計員工簽到信息?!昂灣鼋y(tǒng)計”表:假如員工需要簽出時,使用該表登記在冊。第11頁11.3.2結構空數(shù)據(jù)庫系統(tǒng)新建一個“人事管理系統(tǒng).accdb”空白數(shù)據(jù)庫。第一步:開啟Access。單擊屏幕最左上角Office徽標,在彈出Office功效菜單中選擇【新建】命令;也能夠直接雙擊屏幕中間【空白數(shù)據(jù)庫】按鈕,新建一個數(shù)據(jù)庫,以下列圖所表示。第二步:在屏幕右下方【文件名】文本框中輸入“人事管理系統(tǒng)”,以下列圖所表示。單擊此處,新建一個空數(shù)據(jù)庫。單擊文本框右邊文件夾按鈕,更改數(shù)據(jù)庫存放位置,以下列圖所表示。在這里輸入您想要文件名。第12頁11.3.2結構空數(shù)據(jù)庫系統(tǒng)新建一個“人事管理系統(tǒng).accdb”空白數(shù)據(jù)庫。第三步:單擊【創(chuàng)建】按鈕,完成新建一個空白數(shù)據(jù)庫,系統(tǒng)自動創(chuàng)建一個空白數(shù)據(jù)表,以下列圖所表示。第13頁11.3.3數(shù)據(jù)表字段結構設計SwitchboardItems”表在“人事管理系統(tǒng).accdb”數(shù)據(jù)庫中創(chuàng)建“SwitchboardItems”表。第一步:創(chuàng)建“人事管理系統(tǒng).accdb”數(shù)據(jù)庫中自動創(chuàng)建了“表1”數(shù)據(jù)表,單擊【數(shù)據(jù)表】選項卡下【視圖】按鈕,以下列圖所表示。第二步:在彈出【另存為】對話框【表名稱】文本框中輸入“SwitchboardItems”,以下列圖所表示。單擊【確定】按鈕,進入表【設計視圖】,以下列圖所表示。第14頁11.3.3數(shù)據(jù)表字段結構設計SwitchboardItems”表在“人事管理系統(tǒng).accdb”數(shù)據(jù)庫中創(chuàng)建“SwitchboardItems”表。

第三步:在“SwitchboardItems”表【設計視圖】中進行表字段設計。各個字段名稱、數(shù)據(jù)類型等以下表所表示。第四步:輸入并設置各個字段以后,表【設計視圖】以下列圖所表示。列

名數(shù)據(jù)類型字段寬度主

鍵SwitchboardID數(shù)字長整型是ItemNumber數(shù)字長整型是ItemText文本255否Command數(shù)字長整型否Argument文本255否第五步:單擊屏幕左上角【保留】按鈕,保留該表。單擊【視圖】按鈕,進入表【數(shù)據(jù)表視圖】。第15頁11.3.3數(shù)據(jù)表字段結構設計“管理員”表“管理員”表中存放是該系統(tǒng)管理人員信息。

“管理員”表字段結構以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵員工編號文本9是用戶名文本18否密碼文本18否第16頁11.3.3數(shù)據(jù)表字段結構設計“員工信息”表“員工信息”表中存放企業(yè)員工個人信息,比如員工編號、姓名、性別等。字

名數(shù)據(jù)類型字段寬度是否主鍵員工編號文本9是姓名文本18否性別文本是/否否部門編號文本2否職位文本18否學歷文本6否畢業(yè)院校文本255否專業(yè)文本255否家庭住址文本255否電話文本18否狀態(tài)文本1否備注文本255否基本工資級別編號文本6否崗位津貼級別編號文本6否第17頁11.3.3數(shù)據(jù)表字段結構設計“部門信息”表“部門信息”表存放企業(yè)中各個部門信息,比如部門編號、名稱、部門經(jīng)理等?!安块T信息”表字段結構以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵編號文本2是名稱文本18否經(jīng)理文體9否備注文本255否第18頁11.3.3數(shù)據(jù)表字段結構設計“人事變更統(tǒng)計”表“人事變更統(tǒng)計”表是存放員工職位變更信息表,它統(tǒng)計了員工原職位和現(xiàn)職位。字

名數(shù)據(jù)類型字段寬度是否主鍵統(tǒng)計編號自動編號是員工編號文本9否原職位文本18否現(xiàn)職位文本18否登記時間日期/時間否備注文本255否“人事變更統(tǒng)計”表字段結構以下表。第19頁11.3.3數(shù)據(jù)表字段結構設計“班次配置”表“班次配置”表用于統(tǒng)計員工上班班次信息。如“早晨班”“班次開始時間”、“班次結束時間”等?!鞍啻闻渲谩北碜侄谓Y構以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵班次編號文本2是名稱文本18否班次開始時間日期/時間否班次結束時間日期/時間否備注文本255第20頁11.3.3數(shù)據(jù)表字段結構設計“出勤統(tǒng)計”表“出勤統(tǒng)計”表用于統(tǒng)計全部員工天天出勤統(tǒng)計?!俺銮诮y(tǒng)計”表字段結構以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵統(tǒng)計號自動編號是日期日期/時間否員工編號文本9否出勤配置編號數(shù)字長整型否第21頁11.3.3數(shù)據(jù)表字段結構設計“出勤配置”表“出勤配置”表用于統(tǒng)計員工出勤信息。“出勤配置”表字段結構以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵出勤配置編號數(shù)字長整型是出勤說明文本255否第22頁11.3.3數(shù)據(jù)表字段結構設計“級別工資配置”表“級別工資配置”表用于統(tǒng)計員工所處工資級別詳細信息?!凹墑e工資配置”表字段結構以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵級別工資編號文本6是名稱文本18否金額數(shù)字單精度型否備注文本255否第23頁11.3.3數(shù)據(jù)表字段結構設計“加班統(tǒng)計”表“加班統(tǒng)計”表用于統(tǒng)計員工加班統(tǒng)計,以用于工資核實?!凹影嘟y(tǒng)計”表字段結構以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵加班日期日期/時間是員工編號文本9是加班開始時間日期/時間否加班結束時間日期/時間否連續(xù)時間數(shù)字長整型否第24頁11.3.3數(shù)據(jù)表字段結構設計“企業(yè)工資發(fā)放統(tǒng)計”表“企業(yè)工資發(fā)放統(tǒng)計”表是企業(yè)工資財務統(tǒng)計,保留著已經(jīng)核發(fā)工資員工詳細內(nèi)容?!捌髽I(yè)工資發(fā)放統(tǒng)計”表邏輯結構設計以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵統(tǒng)計編號自動編號是年份數(shù)字長整型否月份數(shù)字長整型否日期日期/時間否員工編號文本9否基本工資數(shù)額數(shù)字單精度型否崗位津貼數(shù)額數(shù)字單精度型否加班補助數(shù)額數(shù)字單精度型否出差補助數(shù)額數(shù)字單精度型否違紀扣除數(shù)額數(shù)字單精度型否實際應發(fā)數(shù)額數(shù)字單精度型否備注文本255否第25頁11.3.3數(shù)據(jù)表字段結構設計企業(yè)工資計算規(guī)則”表“企業(yè)工資計算規(guī)則”表保留著企業(yè)內(nèi)部工資計算規(guī)則。“企業(yè)工資計算規(guī)則”邏輯結構設計以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵加班補助數(shù)字單精度型否出差補助數(shù)字單精度型否遲到/早退扣除數(shù)字單精度型否缺席扣除數(shù)字單精度型否第26頁11.3.3數(shù)據(jù)表字段結構設計“簽出統(tǒng)計”表假如員工需要簽出時,則使用該表登記在冊,其邏輯結構設計以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵日期日期/時間單精度型是員工編號文本9是班次編號文本2否簽出時間日期/時間否備注文本255否第27頁11.3.3數(shù)據(jù)表字段結構設計“簽到統(tǒng)計”表簽到時,使用“簽到統(tǒng)計”表登記,其邏輯結構設計以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵日期日期/時間單精度型是員工編號文本9是班次編號文本2否簽到時間日期/時間否備注文本255否第28頁11.3.3數(shù)據(jù)表字段結構設計“缺勤統(tǒng)計”表“缺勤統(tǒng)計”表統(tǒng)計著全部員工缺勤信息,其邏輯結構設計以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵日期日期/時間單精度型是員工編號文本9是缺勤原因文本255否缺勤天數(shù)數(shù)字長整型否缺勤開始時間日期/時間否缺勤結束時間日期/時間否備注文本255否第29頁11.3.3數(shù)據(jù)表字段結構設計月度出勤匯總”表“月度出勤匯總”表保留著企業(yè)員工每個月出勤信息匯總,其邏輯結構設計以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵員工編號文本9是簽到次數(shù)數(shù)字長整型否簽出次數(shù)數(shù)字長整型否遲到次數(shù)數(shù)字長整型否早退次數(shù)數(shù)字長整型否出差天數(shù)數(shù)字長整型否請假天數(shù)數(shù)字長整型否休假天數(shù)數(shù)字長整型否加班時間匯總數(shù)字長整型否第30頁11.3.3數(shù)據(jù)表字段結構設計“職位津貼配置”表“職位津貼配置”表保留著企業(yè)內(nèi)部關于津貼詳細信息,其邏輯結構設計以下表。字

名數(shù)據(jù)類型字段寬度是否主鍵職位津貼編號文本6是名稱文本18否數(shù)額數(shù)字單精度型否備注文本255否第31頁11.3.4數(shù)據(jù)表表關系設計為“人事管理系統(tǒng).accdb”數(shù)據(jù)庫建立表關系。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫,并切換到【數(shù)據(jù)庫工具】選項卡,以下列圖所表示。第二步:單擊【數(shù)據(jù)庫工具】選項卡下【顯示/隱藏】組中【關系】按鈕,即可進入該數(shù)據(jù)庫【關系】視圖,以下列圖所表示。第32頁11.3.4數(shù)據(jù)表表關系設計為“人事管理系統(tǒng).accdb”數(shù)據(jù)庫建立表關系。第三步:在【關系】視圖中右擊,在彈出快捷菜單中選擇【顯示表】命令;或者直接單擊【關系】組中【顯示表】按鈕,以下列圖所表示。第四步:系統(tǒng)彈出【顯示表】對話框,以下列圖所表示。

第33頁11.3.4數(shù)據(jù)表表關系設計為“人事管理系統(tǒng).accdb”數(shù)據(jù)庫建立表關系。第五步:在【顯示表】對話框中依次選擇全部數(shù)據(jù)表,單擊【添加】按鈕,將全部數(shù)據(jù)表添加進【關系】視圖,以下列圖所表示。第六步:選擇“員工信息”表中“員工編號”字段,按下鼠標左鍵不放并將其拖動到“管理員”表中“員工編號”字段上,釋放鼠標左鍵,系統(tǒng)顯示【編輯關系】對話框,以下列圖所表示。第34頁11.3.4數(shù)據(jù)表表關系設計為“人事管理系統(tǒng).accdb”數(shù)據(jù)庫建立表關系。第七步:選中【實施參考完整性】復選框,以確保在“管理員”表中登記“員工編號”都是在“員工信息”表中統(tǒng)計“員工編號”。單擊【創(chuàng)建】按鈕,創(chuàng)建一表關系,以下列圖所表示。這么我們就完成了第一個表關系創(chuàng)建。重復以上步驟中第6步和第7步,建立其余各表間表關系,以下表所表示。表

名字

名相關表名字

名員工信息員工編號管理員員工編號員工信息員工編號人事變更信息員工編號員工信息員工編號出勤統(tǒng)計員工編號員工信息員工編號企業(yè)工資發(fā)放統(tǒng)計員工編號員工信息員工編號簽到統(tǒng)計員工編號員工信息員工編號簽出統(tǒng)計員工編號員工信息員工編號月度出勤匯總員工編號員工信息員工編號缺勤統(tǒng)計員工編號員工信息員工編號加班統(tǒng)計員工編號員工信息員工編號部門信息經(jīng)理編號部門信息部門編號員工信息部門編號級別工資配置級別工資編號員工信息基本工資級別編號崗位津貼配置崗位津貼編號員工信息崗位津貼級別編號出勤配置出勤配置編號出勤統(tǒng)計出勤配置編號班次配置班次編號簽出統(tǒng)計班次編號班次配置班次編號簽到統(tǒng)計班次編號第35頁11.3.4數(shù)據(jù)表表關系設計為“人事管理系統(tǒng).accdb”數(shù)據(jù)庫建立表關系。第八步:建立這些關系后能夠在【關系】視圖中預覽全部關聯(lián)關系,以下列圖所表示。第九步:單擊【關閉】按鈕,系統(tǒng)彈出提醒保留布局對話框,單擊【是】按鈕,保留【關系】視圖更改,以下列圖所表示。第36頁11.4窗體實現(xiàn)“主切換面板”窗體設計設計“登錄”窗體創(chuàng)建“員工信息查詢”窗體創(chuàng)建“員工人事變更統(tǒng)計”窗體創(chuàng)建“員工考勤統(tǒng)計查詢”窗體創(chuàng)建“員工工資查詢”窗體第37頁11.4.1“主切換面板”窗體設計建立“主切換面板”窗體,實現(xiàn)系統(tǒng)功效導航作用。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:單擊【創(chuàng)建】選項卡下【窗體】組中【窗體設計】按鈕,Access即新創(chuàng)建一個窗體并進入窗體【設計視圖】,以下列圖所表示。第三步:添加窗體標題。單擊【控件】組中【標題】按鈕,則窗體顯示【窗體頁眉】節(jié),并在頁眉區(qū)域中顯示“主切換面板”標題。將窗體標題更改為“歡迎使用夕林人事管理系統(tǒng)”,并設置標題格式,以下列圖所表示?!皹祟}”各個屬性以下列圖所表示【屬性表】窗格。第38頁11.4.1“主切換面板”窗體設計建立“主切換面板”窗體,實現(xiàn)系統(tǒng)功效導航作用。第四步:添加系統(tǒng)徽標。單擊【徽標】按鈕,彈出選擇徽標對話框。選擇一個Bmp圖片作為徽標,并將【圖片類型】設為“嵌入”,最終止果以下列圖所表示。第五步:設置主體背景顏色。在主體區(qū)域中右擊,在彈出快捷菜單中選擇【填充/背景色】命令,彈出以下列圖所表示菜單。第39頁11.4.1“主切換面板”窗體設計建立“主切換面板”窗體,實現(xiàn)系統(tǒng)功效導航作用。第六步:在顏色塊中選擇一個顏色作為背景顏色。第七步:添加按鈕。單擊【控件】組中【按鈕】控件,并在窗體主體區(qū)域中單擊,系統(tǒng)會彈出【命令按鈕向導】對話框,以下列圖所表示。第八步:單擊【取消】按鈕,取消該向導。單擊按鈕窗體,并在【屬性表】窗格中設置按鈕【名稱】為“btn1”,刪除【標題】屬性中信息。第九步:在“btn1”按鈕控件右方添加一個“標簽”窗體控件,將【名稱】屬性改為“l(fā)bl1”,【標題】屬性改為“1”。第40頁11.4.1“主切換面板”窗體設計建立“主切換面板”窗體,實現(xiàn)系統(tǒng)功效導航作用。第十步:單擊“l(fā)bl1”標簽控件,在“l(fā)bl1”標簽控件左邊出現(xiàn)“”控件關聯(lián)圖標。單擊該圖標,系統(tǒng)彈出一個快捷菜單,以下列圖所表示。第十一步:選擇【將標簽與控件關聯(lián)】命令,系統(tǒng)彈出【關聯(lián)標簽】對話框,以下列圖所表示。第41頁11.4.1“主切換面板”窗體設計建立“主切換面板”窗體,實現(xiàn)系統(tǒng)功效導航作用。第十二步:選擇“btn1”選項,并單擊【確定】按鈕。這么“btn1”按鈕控件就與“l(fā)bl1”標簽控件建立了關聯(lián)。第十三步:重復以上步驟,在“btn1”按鈕控件下方添加其余7個按鈕窗體控件和標簽窗體控件,以下列圖所表示。第十四步:修改每個控件屬性,以下表所表示。類

型名

稱標

題標簽lbl11標簽lbl22標簽lbl33標簽lbl44標簽lbl55標簽lbl66標簽lbl77標簽lbl88按鈕btn1按鈕btn2按鈕btn3按鈕btn4按鈕btn5按鈕btn6按鈕btn7按鈕btn8第42頁11.4.1“主切換面板”窗體設計建立“主切換面板”窗體,實現(xiàn)系統(tǒng)功效導航作用。第十五步:單擊【保留】按鈕,系統(tǒng)彈出【另存為】對話框,輸入窗體名“主切換面板”,以下列圖所表示。第十六步:單擊【確定】按鈕,則新創(chuàng)建了一個“主切換面板”窗體。這么就完成了“主切換面板”窗體創(chuàng)建。注意,在這里創(chuàng)建僅僅是一個空白窗體。該窗體【窗體視圖】以下列圖所表示。第43頁11.4.1“主切換面板”窗體設計建立“主切換面板”窗體,實現(xiàn)系統(tǒng)功效導航作用。第十七步:在“SwitchboardItems”表中添加對應統(tǒng)計,以下表所表示。SwitchboardIDItemNumberItemTextComandArgument10主切換面板0默認11員工信息查詢編輯2員工信息查詢編輯12人事變更統(tǒng)計查詢編輯2人事變更統(tǒng)計查詢編輯13員工工資查詢2員工工資查詢14員工考勤統(tǒng)計查詢2員工考勤統(tǒng)計查詢15預覽報表…2218退出數(shù)據(jù)庫420報表切換面板021企業(yè)工資發(fā)放統(tǒng)計報表3企業(yè)工資發(fā)放統(tǒng)計報表22企業(yè)員工出勤統(tǒng)計報表3企業(yè)員工出勤統(tǒng)計報表28返回主面板11第44頁11.4.2設計“登錄”窗體利用和11.4.1節(jié)相同步驟,創(chuàng)建“登錄”窗體,全部窗體控件信息以下表。創(chuàng)建窗體視圖以下列圖所表示。類

型名

稱標

題標簽用戶名用戶名:標簽密碼密碼:文本框UserName文本框Password按鈕OK按鈕Cancel第45頁11.4.3創(chuàng)建“員工信息查詢”窗體使用窗體向導,來創(chuàng)建“員工信息查詢”窗體。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,單擊【其它窗體】按鈕,在彈出菜單中選擇【窗體向導】選項,以下列圖所表示。第三步:彈出【窗體向導】對話框,在【表/查詢】下拉列表框中選擇“表:員工信息”,將【可用字段】列表框中全部字段添加到右面【選定字段】列表框中,以下列圖所表示。第46頁11.4.3創(chuàng)建“員工信息查詢”窗體使用窗體向導,來創(chuàng)建“員工信息查詢”窗體。第四步:單擊【下一步】按鈕,彈出要求用戶選擇布局對話框。我們選擇【縱欄表】選項,以下列圖所表示。第五步:單擊【下一步】按鈕,彈出要求選擇窗體樣式對話框。在下拉列表框中選擇Northwind選項,以下列圖所表示。第47頁11.4.3創(chuàng)建“員工信息查詢”窗體使用窗體向導,來創(chuàng)建“員工信息查詢”窗體。第六步:單擊【下一步】按鈕,輸入窗體標題為“員工信息查詢”,再選中【打開窗體查看或輸入信息】單項選擇按鈕,以下列圖所表示。第七步:單擊【完成】按鈕,完成窗體創(chuàng)建。第48頁11.4.3創(chuàng)建“員工信息查詢”窗體使用窗體向導,來創(chuàng)建“員工信息查詢”窗體。這么我們就利用窗體向導創(chuàng)建了一個“員工信息查詢”窗體,窗體界面以下列圖所表示。在窗體中右擊,在彈出快捷菜單中選擇【設計視圖】選項,進入該窗體【設計視圖】,以下列圖所表示。第49頁11.4.3創(chuàng)建“員工信息查詢”窗體使用窗體向導,來創(chuàng)建“員工信息查詢”窗體。在【設計視圖】中對自動生成窗體做深入修改。設置【窗體頁眉】區(qū)域中背景顏色、標題信息等,然后重新調(diào)整各個文本框寬度、高度等。最終效果以下列圖所表示。第50頁11.4.4創(chuàng)建“員工人事變更統(tǒng)計”窗體使用窗體向導創(chuàng)建“員工人事變更統(tǒng)計”窗體。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,單擊【其它窗體】按鈕,在彈出菜單中選擇【窗體向導】選項,彈出【窗體向導】對話框。第三步:在向【選定字段】對話框輸入字段之前,先選擇“員工信息”表中“姓名”,然后再將“人事變更統(tǒng)計”表中全部字段選為選定字段,以下列圖所表示。第四步:單擊【下一步】按鈕,選擇【經(jīng)過員工信息】選項,再選中【帶有子窗體窗體】單項選擇按鈕,以下列圖所表示。第51頁11.4.4創(chuàng)建“員工人事變更統(tǒng)計”窗體使用窗體向導創(chuàng)建“員工人事變更統(tǒng)計”窗體。第五步:單擊【下一步】按鈕,彈出要求選擇窗體布局對話框。我們選擇【數(shù)據(jù)表】選項,以下列圖所表示。第六步:單擊【下一步】按鈕,彈出要求選擇樣式對話框。我們選擇Northwind選項,以下列圖所表示。第52頁11.4.4創(chuàng)建“員工人事變更統(tǒng)計”窗體使用窗體向導創(chuàng)建“員工人事變更統(tǒng)計”窗體。第七步:單擊【下一步】按鈕,輸入窗體標題“員工人事變更統(tǒng)計”和子窗體標題“員工人事變更統(tǒng)計_子窗體”,然后在下面選中【打開窗體查看或輸入信息】單項選擇按鈕,以下列圖所表示。第八步:單擊【完成】按鈕,完成該窗體創(chuàng)建。第53頁11.4.4創(chuàng)建“員工人事變更統(tǒng)計”窗體使用窗體向導創(chuàng)建“員工人事變更統(tǒng)計”窗體。這么我們就利用窗體向導建立了一個“員工人事變更統(tǒng)計”窗體。創(chuàng)建后窗體以下列圖所表示。能夠看到,自動創(chuàng)建窗體在布局上有些混亂。需要我們進行手工修改。在窗體中右擊,在彈出快捷菜單中選擇【設計視圖】選項,進入該窗體【設計視圖】,以下列圖所表示。第54頁11.4.4創(chuàng)建“員工人事變更統(tǒng)計”窗體使用窗體向導創(chuàng)建“員工人事變更統(tǒng)計”窗體。在【設計視圖】中對自動生成窗體做深入修改。設置【窗體頁眉】區(qū)域中背景顏色、標題信息,調(diào)整子窗體位置,調(diào)整各個文本框寬度、高度等。最終效果以下列圖所表示。第55頁11.4.5創(chuàng)建“員工考勤統(tǒng)計查詢”窗體首先設計好窗體中各個控件屬性,以下表所表示。類

型名

稱標

題標簽員工號標簽員工號:標簽開始時間標簽開始時間:標簽結束時間標簽結束時間:文本框員工號文本框開始時間文本框結束時間按鈕考勤查詢按鈕取消第56頁11.4.5創(chuàng)建“員工考勤統(tǒng)計查詢”窗體在窗體【設計視圖】中,利用窗體各種控件創(chuàng)建“員工考勤統(tǒng)計查詢”窗體。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,然后單擊【窗體】組中【窗體設計】按鈕,進入窗體【設計視圖】,以下列圖所表示。第三步:單擊【控件】組中“標題”控件,則在【設計視圖】中顯示【窗體頁眉】區(qū)域,并在頁眉區(qū)域中顯示窗體標題。重新輸入窗體標題,以下列圖所表示。第57頁11.4.5創(chuàng)建“員工考勤統(tǒng)計查詢”窗體在窗體【設計視圖】中,利用窗體各種控件創(chuàng)建“員工考勤統(tǒng)計查詢”窗體。第四步:單擊【控件】組中“文本框”控件,并在窗體【主體】區(qū)域中單擊,彈出【文本框向導】對話框,以下列圖所表示。第五步:按照【文本框向導】提醒,完成該文本框屬性設置,并將該文本框命名為“員工號”。第58頁11.4.5創(chuàng)建“員工考勤統(tǒng)計查詢”窗體在窗體【設計視圖】中,利用窗體各種控件創(chuàng)建“員工考勤統(tǒng)計查詢”窗體。第六步:用一樣方法添加另外兩個文本框,并分別命名為“開始時間”和“結束時間”,以下列圖所表示。第七步:設置“開始時間”和“結束時間”文本框控件格式。選擇【屬性表】窗格中【格式】選項卡,然后在【格式】行下拉列表框中選擇【常規(guī)日期】選項,這么即可在程序中經(jīng)過時間控件來輸入時間信息,以下列圖所表示。第59頁11.4.5創(chuàng)建“員工考勤統(tǒng)計查詢”窗體在窗體【設計視圖】中,利用窗體各種控件創(chuàng)建“員工考勤統(tǒng)計查詢”窗體。第七步:單擊【控件】組中“按鈕”控件,并在窗體【主體】區(qū)域中單擊,彈出【命令按鈕向導】對話框,單擊【取消】按鈕。第八步:在【屬性表】窗格中,設置該按鈕標題和名稱均為“考勤查詢”,以下列圖所表示。第九步:用一樣方法添加另外一個按鈕,標題和名稱均為“取消”。第十步:單擊【保留】按鈕,保留該按鈕為“員工考勤統(tǒng)計查詢”。第60頁11.4.5創(chuàng)建“員工考勤統(tǒng)計查詢”窗體在窗體【設計視圖】中,利用窗體各種控件創(chuàng)建“員工考勤統(tǒng)計查詢”窗體。這么我們就完成了“員工考勤統(tǒng)計查詢”窗體設計,以下列圖所表示。設計完成以后,設置窗體背景顏色、字體和字號等屬性,最終效果創(chuàng)建后窗體【窗體視圖】以下列圖所表示。第61頁11.4.6創(chuàng)建“員工工資查詢”窗體用和11.4.5小節(jié)中一樣方法,在【設計視圖】中創(chuàng)建“員工工資查詢”窗體,全部窗體控件信息以下表所表示。其中,在創(chuàng)建窗體組合框控件“開始月份”和“結束月份”時,創(chuàng)建效果以下列圖所表示。類

型名

稱標

題標簽員工號標簽員工號標簽開始月份標簽開始月份標簽結束月份標簽結束月份文本框員工號組合框開始月份組合框結束月份按鈕工資查詢按鈕取消第62頁11.4.6創(chuàng)建“員工工資查詢”窗體這么組合框能夠在【屬性表】窗格中設置。選擇該“開始月份”組合框,然后將【屬性表】切換到【數(shù)據(jù)】選項卡,在【行起源類型】行中選擇【值列表】選項,然后在【行起源】行中輸入想要在列表框中出現(xiàn)選項。比如在本例中我們要實現(xiàn)12個月選擇,所以能夠輸入“1;2;3;4;5;6;7;8;9;10;11;12”,以下列圖所表示。將該窗體保留為“員工工資查詢”窗體,最終效果以下列圖所表示。第63頁11.5創(chuàng)建查詢“員工考勤統(tǒng)計”查詢創(chuàng)建“員工工資”查詢第64頁11.5.1“員工考勤統(tǒng)計”查詢建立一個查詢,要求能夠查詢某一員工考勤統(tǒng)計。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,然后單擊【其它】組中【查詢設計】按鈕,以下列圖所表示。第三步:系統(tǒng)進入查詢【設計視圖】,并彈出【顯示表】對話框,以下列圖所表示。第65頁11.5.1“員工考勤統(tǒng)計”查詢建立一個查詢,要求能夠查詢某一員工考勤統(tǒng)計。第四步:在【顯示表】對話框中選擇“員工信息”表,單擊【添加】按鈕,將該表添加到查詢【設計視圖】中。用一樣方法,將“出勤配置”表和“出勤統(tǒng)計”表也添加進【設計視圖】中,以下列圖所表示。第五步:向查詢設計網(wǎng)格中添加字段。選擇“出勤統(tǒng)計”表中“員工編號”字段,并按下鼠標左鍵將其拖動到下面第一個查詢設計網(wǎng)格中。第六步:在網(wǎng)格【條件行】中輸入查詢條件為“[Forms]![員工考勤統(tǒng)計查詢]![員工號]”。第66頁11.5.1“員工考勤統(tǒng)計”查詢建立一個查詢,要求能夠查詢某一員工考勤統(tǒng)計。第七步:用一樣方法,依次向網(wǎng)格中添加以下表所表示字段信息。字段表排序條件員工編號出勤統(tǒng)計無[Forms]![員工考勤統(tǒng)計查詢]![員工編號]姓名員工信息無日期出勤統(tǒng)計升序Between[Forms]![員工考勤統(tǒng)計查詢]![開始日期]And[Forms]![員工考勤統(tǒng)計查詢]![結束日期]出勤說明出勤配置無設置好以后視圖以下列圖所表示。第八步:單擊【保留】按鈕,把此查詢保留為“員工考勤統(tǒng)計查詢”。第67頁11.5.1“員工考勤統(tǒng)計”查詢這么我們就完成了能夠查詢員工考勤信息一個查詢,在導航窗格中雙擊執(zhí)行該查詢,能夠彈出要求用戶輸入?yún)?shù)值對話框,以下列圖所表示。輸入員工編號,單擊【確定】按鈕,在彈出對話框中輸入開始日期和結束日期,以下列圖所表示。

這么即可實現(xiàn)員工考勤情況查詢,查詢結果以下列圖所表示。第68頁11.5.1“員工考勤統(tǒng)計”查詢在創(chuàng)建該查詢過程中,最難以確定就是各種查詢條件。為了方便用戶輸入查詢條件,Access提供了“表示式生成器”,用戶能夠在生成器中創(chuàng)建自己查詢條件。在查詢設計網(wǎng)格【條件】行右擊,在彈出快捷菜單中選擇【生成器】選項,以下列圖所表示。彈出【表示式生成器】對話框,依次選擇“窗體”|“員工考勤統(tǒng)計”|“員工號”,并雙擊“員工號”字段,即可在上面表示式輸入窗口中顯示該查詢條件,以下列圖所表示。第69頁11.5.2創(chuàng)建“員工工資”查詢創(chuàng)建“員工工資”查詢與11.5.1小節(jié)步驟相同。其相關表為“部門信息”表、“員工信息”表和“企業(yè)工資發(fā)放統(tǒng)計”表3個表,其字段信息以下表所表示。字段表排序條件部門名稱部門信息無員工編號企業(yè)工資發(fā)放統(tǒng)計無[Forms]![員工工資查詢]![員工號]姓名員工信息無月份企業(yè)工資發(fā)放統(tǒng)計升序Between[Forms]![員工工資查詢]![開始月份]And[Forms]![員工工資查詢]![結束月份]年份企業(yè)工資發(fā)放統(tǒng)計升序實際應發(fā)數(shù)額企業(yè)工資發(fā)放統(tǒng)計無基本工資數(shù)額企業(yè)工資發(fā)放統(tǒng)計無崗位津貼數(shù)額企業(yè)工資發(fā)放統(tǒng)計無加班補助數(shù)額企業(yè)工資發(fā)放統(tǒng)計無出差補助數(shù)額企業(yè)工資發(fā)放統(tǒng)計無違規(guī)扣除數(shù)額企業(yè)工資發(fā)放統(tǒng)計無第70頁11.5.2創(chuàng)建“員工工資”查詢將該查詢保留為“員工工資查詢”,以下列圖所表示。第71頁11.6報表實現(xiàn)“員工考勤統(tǒng)計查詢”報表“員工工資查詢”報表“員工出勤統(tǒng)計”報表“企業(yè)工資發(fā)放統(tǒng)計”報表第72頁11.6.1“員工考勤統(tǒng)計查詢”報表該查詢統(tǒng)計報表主要功效就是對員工考勤統(tǒng)計進行查詢和打印。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,在【報表】組中單擊【報表向導】按鈕,以下列圖所表示。第三步:系統(tǒng)彈出【報表向導】對話框,在【表/查詢】下拉列表框中選擇“查詢:員工考勤統(tǒng)計查詢”,然后把全部字段作為選定字段。以下列圖所表示。第73頁11.6.1“員工考勤統(tǒng)計查詢”報表該查詢統(tǒng)計報表主要功效就是對員工考勤統(tǒng)計進行查詢和打印。第四步:單擊【下一步】按鈕,彈出選擇數(shù)據(jù)查看方式對話框。選擇“經(jīng)過出勤統(tǒng)計”選項,以下列圖所表示。第五步:單擊【下一步】按鈕,彈出添加分組級別對話框。不選擇分組字段,以下列圖所表示。第74頁11.6.1“員工考勤統(tǒng)計查詢”報表該查詢統(tǒng)計報表主要功效就是對員工考勤統(tǒng)計進行查詢和打印。第六步:單擊【下一步】按鈕,彈出選擇排序字段對話框。選擇經(jīng)過“日期”排序,排序方式為“升序”,以下列圖所表示。第七步:單擊【下一步】按鈕,彈出選擇布局方式對話框。選擇【表格】選項,方向為【縱向】,以下列圖所表示。第75頁11.6.1“員工考勤統(tǒng)計查詢”報表該查詢統(tǒng)計報表主要功效就是對員工考勤統(tǒng)計進行查詢和打印。第八步:單擊【下一步】按鈕,彈出選擇報表樣式對話框。選擇【辦公室】樣式,以下列圖所表示。第九步:單擊【下一步】按鈕,輸入標題為“員工考勤統(tǒng)計查詢報表”,并選中【預覽報表】單項選擇按鈕,以下列圖所表示。第十步:單擊【完成】按鈕,這么就創(chuàng)建了一個“員工考勤統(tǒng)計查詢報表”。第76頁11.6.1“員工考勤統(tǒng)計查詢”報表用戶能夠在導航窗格中看到該報表,雙擊報表,彈出要求用戶輸入“員工編號”對話框(和雙擊查詢一樣)。輸入正確參數(shù)以后,用戶就能夠查看該報表,以下列圖所表示。進入報表【設計視圖】,對以上用向導自動生成報表進行適當修改,比如設置標題格式、頁腳內(nèi)容等。最終設計效果以下列圖所表示。第77頁11.6.2“員工工資查詢”報表我們來創(chuàng)建“員工工資查詢報表”。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,在【報表】組中單擊【報表向導】按鈕,以下列圖所表示。第三步:彈出【報表向導】對話框,在【表/查詢】中選擇“查詢:員工工資查詢”,然后把全部字段作為選定字段,以下列圖所表示。第78頁11.6.2“員工工資查詢”報表我們來創(chuàng)建“員工工資查詢報表”。第四步:單擊【下一步】按鈕,彈出選擇數(shù)據(jù)查看方式對話框。選擇“經(jīng)過企業(yè)工資發(fā)放統(tǒng)計”選項,以下列圖所表示。第五步:單擊【下一步】按鈕,彈出選擇是否分組對話框。不選擇分組字段,以下列圖所表示。第79頁11.6.2“員工工資查詢”報表我們來創(chuàng)建“員工工資查詢報表”。第六步:單擊【下一步】按鈕,在排序方式中選擇經(jīng)過“年份”和“月份”進行排序,排序方式均為“升序”,以下列圖所表示。第七步:單擊【下一步】按鈕,在彈出對話框中設置布局方式。布局選擇【表格】選項,方向選擇【橫向】,以下列圖所表示。第80頁11.6.2“員工工資查詢”報表我們來創(chuàng)建“員工工資查詢報表”。第八步:單擊【下一步】按鈕,彈出選擇樣式對話框。選擇【辦公室】選項,以下列圖所表示。第九步:單擊【下一步】按鈕,輸入標題為“員工工資查詢報表”,選中【預覽報表】單項選擇按鈕,以下列圖所表示。第十步:單擊【完成】按鈕,這么就創(chuàng)建了一個“員工工資查詢報表”。第81頁11.6.2“員工工資查詢”報表該報表以“員工工資查詢”為數(shù)據(jù)源,進行員工已發(fā)薪金篩選和查詢。用戶能夠在導航窗格中看到該報表,雙擊報表,彈出要求用戶輸入員工編號對話框(和雙擊查詢一樣)。輸入正確參數(shù)以后,用戶就能夠查看該報表,以下列圖所表示。進入報表【設計視圖】,對以上用向導自動生成報表進行適當修改,比如設置標題格式、頁腳內(nèi)容等。最終設計效果以下列圖所表示。第82頁11.6.3“員工出勤統(tǒng)計”報表我們利用報表向導,創(chuàng)建“員工出勤統(tǒng)計報表”。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,在【報表】組中單擊【報表向導】按鈕。第三步:彈出【報表向導】對話框,在對話框中將“表:出勤統(tǒng)計”中“統(tǒng)計號”、“日期”、“員工編號”字段,“表:員工信息”中“姓名”字段和“表:出勤配置”中“出勤說明”字段添加到【選定字段】列表框中,以下列圖所表示。第四步:單擊【下一步】按鈕,在彈出選擇數(shù)據(jù)查看方式對話框中選擇“經(jīng)過出勤統(tǒng)計”選項,以下列圖所表示。第83頁11.6.3“員工出勤統(tǒng)計”報表我們利用報表向導,創(chuàng)建“員工出勤統(tǒng)計報表”。第五步:其余各操作步驟設置與11.6.2小節(jié)中一樣,保留該報表為“員工出勤統(tǒng)計報表”,以下列圖所表示。進入報表【設計視圖】,對以上用向導自動生成報表進行適當修改。最終設計效果以下列圖所表示。第84頁11.6.4“企業(yè)工資發(fā)放統(tǒng)計”報表我們經(jīng)過一樣方式創(chuàng)建“企業(yè)工資發(fā)放統(tǒng)計“報表”第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,在【報表】組中單擊【報表向導】按鈕。第三步:彈出【報表向導】對話框,在對話框中將“表:員工信息”中“姓名”字段和“表:企業(yè)工資發(fā)放統(tǒng)計”中全部字段添加到【選定字段】列表框中,以下列圖所表示。第85頁11.6.4“企業(yè)工資發(fā)放統(tǒng)計”報表我們經(jīng)過一樣方式創(chuàng)建“企業(yè)工資發(fā)放統(tǒng)計“報表”第四步:單擊【下一步】按鈕,在彈出選擇數(shù)據(jù)查看方式對話框中選擇【經(jīng)過企業(yè)工資發(fā)放統(tǒng)計】選項,以下列圖所表示。第五步:其余各操作步驟設置與11.6.2小節(jié)中一樣,保留該報表為“企業(yè)工資發(fā)放統(tǒng)計報表”,以下列圖所表示。第86頁11.7編碼實現(xiàn)公用模塊“登錄”窗體代碼“主切換面板”窗體代碼“員工考勤統(tǒng)計查詢”窗體代碼“員工工資查詢”窗體代碼第87頁11.7.1公用模塊在Access開發(fā)過程中,用得最多還是各種事件過程,也即為各種控件等建立響應程序等。在這一小節(jié)中,我們要建立該系統(tǒng)中一個通用模塊,該通用模塊作用就是建立數(shù)據(jù)庫連接、定義用戶登錄等。第88頁11.7.1公用模塊在數(shù)據(jù)庫中建立一個公用模塊,以實現(xiàn)數(shù)據(jù)庫連接和用戶登錄。第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:切換到【創(chuàng)建】選項卡,單擊【其它】組中【宏】按鈕下小箭頭,彈出二級菜單以下列圖所表示。第三步:單擊【模塊】選項,系統(tǒng)新建一模塊,并進入VBA編輯器,以下列圖所表示。第89頁11.7.1公用模塊在數(shù)據(jù)庫中建立一個公用模塊,以實現(xiàn)數(shù)據(jù)庫連接和用戶登錄。第四步:在【代碼】窗口中輸入以下代碼:OptionCompareDatabaseOptionExplicitPubliccheckAsBoolean'經(jīng)過字符串StrQuery所引用SQL語句返回一個'ADO.Recordset對象PublicFunctionGetRs(ByValStrQueryAsString)AsADODB.RecordsetDimrsAsNewADODB.RecordsetDimconnAsNewADODB.ConnectionOnErrorGoToGetRS_ErrorSetconn=CurrentProject.Connectionrs.OpenStrQuery,conn,adOpenKeyset,

adLockOptimisticSetGetRs=rsGetRS_Exit:Setrs=NothingSetconn=NothingExitFunctionGetRS_Error:MsgBox(Err.Description)ResumeGetRS_ExitEndFunctionGetRS函數(shù)實現(xiàn)經(jīng)過一條SQL語句,返回一個ADODB.Recordset對象實例。該函數(shù)中用到兩個主要對象以下。ADODB.Recordset.open方法:用于建立一個數(shù)據(jù)庫連接,并返回數(shù)據(jù)庫指針,用以指向數(shù)據(jù)庫中數(shù)據(jù)表、查詢、窗體等對象。adLockOptimistic:指示逐統(tǒng)計開放式鎖定。提供程序使用開放式鎖定,即僅在您調(diào)用Update方法時鎖定統(tǒng)計。第五步:單擊【保留】按鈕,輸入模塊名“公共模塊”,單擊【確定】按鈕即可。第90頁11.7.2“登錄”窗體代碼我們已經(jīng)創(chuàng)建了“登錄”窗體,增加登錄代碼設計其實就是給窗體中各個控件加上事件過程,使用戶操作窗體中控件時,程序能夠對用戶操作做出響應。我們在上面建立“登錄”窗體界面以下列圖所表示。類

型名

稱標

題標簽用戶名用戶名:標簽密碼密碼:文本框UserName文本框Password按鈕OK按鈕Cancel窗體中各個控件名稱和參數(shù)以下表。第91頁11.7.2“登錄”窗體代碼為“登錄”窗體添加各種事件過程,實現(xiàn)用戶登錄功效。為“登錄”窗體添加“加載”事件過程第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:在導航窗格中單擊“登錄”窗體,在彈出快捷菜單中選擇【設計視圖】選項,進入窗體【設計視圖】。第三步:設置窗體統(tǒng)計源。在窗體【屬性表】窗格中,單擊【所選內(nèi)容類型:窗體】下拉列表框,選擇“窗體”選項。切換到【數(shù)據(jù)】選項卡,在【統(tǒng)計源】行下拉列表框中選擇“管理員”表,以下列圖所表示。第四步:給窗體添加“加載”事件過程。將【屬性表】切換到【事件】選項卡,在【加載】行中選擇“事件過程”選項,并單擊右邊省略號按鈕,以下列圖所表示。第92頁11.7.2“登錄”窗體代碼為“登錄”窗體添加各種事件過程,實現(xiàn)用戶登錄功效。為“登錄”窗體添加“加載”事件過程第五步:系統(tǒng)進入VBA編輯器,并自動新建了一個名稱為“Form_Load()”Sub過程。第六步:在【代碼】窗口中輸入以下所表示VBA代碼,給窗體添加“加載”事件過程。PrivateSubForm_Load()'最小化數(shù)據(jù)庫窗體并初始化該窗體OnErrorGoToForm_Open_ErrDoCmd.SelectObjectacForm,"切換面板",TrueDoCmd.Minimizecheck=FalseForm_Open_Exit:ExitSubForm_Open_Err:MsgBoxErr.DescriptionResumeForm_Open_ExitEndSub第七步:保留該VBA代碼,這么就給整個窗體加上了“加載”事件過程。此時【代碼】窗口以下列圖所表示。第93頁11.7.2“登錄”窗體代碼為“登錄”窗體添加各種事件過程,實現(xiàn)用戶登錄功效。為“OK”按鈕添加事件過程第一步:在“登錄”窗體【設計視圖】中單擊【確定】按鈕,以選擇“OK”按鈕控件。第二步:給“OK”按鈕控件添加“單擊”事件過程。將【屬性表】切換到【事件】選項卡,在【單擊】行中選擇“事件過程”選項,并單擊右邊省略號按鈕,以下列圖所表示。第三步:系統(tǒng)進入VBA編輯器,并自動新建了一個名稱為“OK_Click()”Sub過程。第94頁11.7.2“登錄”窗體代碼為“登錄”窗體添加各種事件過程,實現(xiàn)用戶登錄功效。為“OK”按鈕添加事件過程第四步:在【代碼】窗口中輸入以下所表示VBA代碼,給按鈕控件添加“單擊”事件過程。PrivateSubOK_Click()OnErrorGoToErr_OK_ClickDimstrSQLAsStringDimrsAsNewADODB.RecordsetIfIsNull(Me.UserName)OrMe.UserName=""ThenDoCmd.BeepMsgBox("請輸入用戶名稱!")ElseIfIsNull(Me.Password)OrMe.Password=""ThenDoCmd.BeepMsgBox("請輸入密碼!")ElsestrSQL="SELECT*FROM管理員WHERE用

戶名='"&Me.UserName&"'and密碼='"

&Me.Password&"'"Setrs=GetRs(strSQL)Ifrs.EOFThenDoCmd.BeepMsgBox("用戶名或密碼錯誤!")Me.UserName=""Me.Password=""Me.UserName.SetFocusExitSubElseDoCmd.Closecheck=TrueDoCmd.OpenForm("主切換面板")EndIfEndIfSetrs=NothingExit_OK_Click:ExitSubErr_OK_Click:MsgBox(Err.Description)Debug.PrintErr.DescriptionResumeExit_OK_ClickEndSub第95頁11.7.2“登錄”窗體代碼為“登錄”窗體添加各種事件過程,實現(xiàn)用戶登錄功效。為“OK”按鈕添加事件過程第五步:保留該VBA代碼,這么就給“OK”按鈕控件加上“單擊”事件過程。此時【代碼】窗口以下列圖所表示。第96頁11.7.2“登錄”窗體代碼為“登錄”窗體添加各種事件過程,實現(xiàn)用戶登錄功效。為“Concel”按鈕添加事件過程第一步:在“登錄”窗體【設計視圖】中單擊【取消】按鈕,以選擇“Concel”按鈕控件。第二步:給“Concel”按鈕控件添加“單擊”事件過程。將【屬性表】切換到【事件】選項卡,在【單擊】行中選擇“事件過程”選項,并單擊右邊省略號按鈕,以下列圖所表示。第三步:系統(tǒng)進入VBA編輯器,并自動新建了一個名稱為“Concel_Click()”Sub過程。第97頁11.7.2“登錄”窗體代碼為“登錄”窗體添加各種事件過程,實現(xiàn)用戶登錄功效。為“Concel”按鈕添加事件過程第四步:在【代碼】窗口中輸入以下所表示VBA代碼,給按鈕控件添加“單擊”事件過程。第五步:保留該VBA代碼,這么就給“Concel”按鈕控件加上“單擊”事件過程。此時【代碼】窗口以下列圖所表示。PrivateSubCancel_Click()check=FalseDoCmd.CloseEndSub第98頁11.7.2“登錄”窗體代碼這么我們就完成了整個用戶登錄模塊創(chuàng)建工作,在導航窗格中雙擊“登錄”窗體,在窗體中輸入用戶名和密碼,單擊【確定】按鈕,即可登錄,以下列圖所表示。第99頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體上“Btn1”按鈕控件添加“單擊”事件過程第一步:開啟Access,打開“人事管理系統(tǒng).accdb”數(shù)據(jù)庫。第二步:在導航窗格中右擊“主切換面板”窗體,在彈出快捷菜單中選擇【設計視圖】選項,進入窗體【設計視圖】。第三步:調(diào)出【屬性表】窗格,并將其切換到【數(shù)據(jù)】選項卡。單擊【統(tǒng)計源】行小箭頭,在彈出下拉列表框中選擇“SwitchboardItems”表,以下列圖所表示。第四步:單擊btn1按鈕,把【屬性表】窗格切換到【事件】選項卡。在【單擊】行屬性框中輸入“=HandleButtonClick(1)”,添加“btn1”按鈕“單擊事件”響應程序,以下列圖所表示。第100頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體上“Btn1”按鈕控件添加“單擊”事件過程第五步:重復第2步,給其余7個按鈕控件添加單擊消息事件響應程序,各控件響應程序參數(shù)以下表所表示。第六步:在窗口【設計視圖】任意位置右擊,彈出右鍵快捷菜單,以下列圖所表示。控

件事

件事件過程btn1單擊=HandleButtonClick(1)btn2單擊=HandleButtonClick(2)btn3單擊=HandleButtonClick(3)btn4單擊=HandleButtonClick(4)btn5單擊=HandleButtonClick(5)btn6單擊=HandleButtonClick(6)btn7單擊=HandleButtonClick(7)btn8單擊=HandleButtonClick(8)第101頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體上“Btn1”按鈕控件添加“單擊”事件過程第七步:選擇【事件生成器】命令,彈出【選擇生成器】對話框,以下列圖所表示。第八步:選擇【代碼生成器】選項,并單擊【確定】按鈕,打開VBA程序編輯器,以下列圖所表示。第102頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體上“Btn1”按鈕控件添加“單擊”事件過程第九步:刪除系統(tǒng)自動生成“主體_Click()”過程代碼,新建一個新Function函數(shù)HandleButtonClick,代碼以下。PrivateFunctionHandleButtonClick(intbtnAsInteger)'處理按鈕click事件ConstconCmdGotoSwitchboard=1ConstconCmdNewForm=2ConstconCmdOpenReport=3ConstconCmdExitApplication=4ConstconCmdRunMacro=8ConstconCmdRunCode=9ConstconCmdOpenPage=10ConstconErrDoCmdCancelled=2501DimrsAsADODB.RecordsetDimstrSQLAsStringOnErrorGoToHandleButtonClick_ErrSetrs=CreateObject("ADODB.Recordset")strSQL="SELECT*FROM[SwitchboardItems]"strSQL=strSQL&"WHERE[SwitchboardID]="&Me![SwitchboardID]&"AND[ItemNumber]="&intbtnSetrs=GetRs(strSQL)If(rs.EOF)ThenMsgBox"讀取SwitchboardItems表時犯錯。"rs.CloseSetrs=NothingExitFunctionEndIf

第103頁SelectCasers![Command]'進入另一個切換面板CaseconCmdGotoSwitchboardMe.Filter="[ItemNumber]=0AND[SwitchboardID]="&rs![Argument]'打開一個新窗體CaseconCmdNewFormDoCmd.OpenFormrs![Argument]'打開報表CaseconCmdOpenReportDoCmd.OpenReportrs![Argument],acPreview'退出應用程序CaseconCmdExitApplicationCloseCurrentDatabase'運行宏.CaseconCmdRunMacroDoCmd.RunMacrors![Argument]'運行代碼.CaseconCmdRunCodeApplication.Runrs![Argument]'打開一個數(shù)據(jù)存取頁面CaseconCmdOpenPageDoCmd.OpenDataAccessPagers![Argument]'未定義選項CaseElseMsgBox"未知選項"EndSelect'Closetherecordsetandthedatabase.rs.CloseHandleButtonClick_Exit:OnErrorResumeNextSetrs=NothingExitFunctionHandleButtonClick_Err:If(Err=conErrDoCmdCancelled)ThenResumeNextElseMsgBox"執(zhí)行命令時犯錯。",vbCriticalResumeHandleButtonClick_ExitEndIfEndFunction輸入上述代碼后,單擊【保留】按鈕保留代碼。函數(shù)HandleButtonClick則用來處理“主切換面板”上“按鈕”控件“單擊”消息事件。這么就完成了在控制面板上顯示功效項目標目標。第104頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體添加“成為當前”事件過程單擊【成為當前】行小箭頭,在下拉列表框中選擇“事件過程”選項,以下列圖所表示。單擊右邊省略號按鈕,進入VBA編輯器,系統(tǒng)自動建立了一個“Form_Current()”過程,在該過程中加入以下所表示代碼。PrivateSubForm_Current()'更新標題并顯示列表Me.Caption=Nz(Me![ItemText],"")FillbtnsEndSub此時【代碼】窗口以下列圖所表示。第105頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體添加“成為當前”事件過程上面過程中Fillbtns為另外一個能夠實現(xiàn)報表選擇功效過程,F(xiàn)illbtns過程代碼以下所表示。PrivateSubFillbtns()'顯示切換框中列表'按鈕數(shù)量ConstconNumButtonsAsInteger=8DimrsAsNewADODB.RecordsetDimstrSQLAsStringDimintbtnAsIntegerMe![btn1].SetFocusForintbtn=2ToconNumButtonsMe("btn"&intbtn).Visible=FalseMe("lbl"&intbtn).Visible=FalseNextintbtn'打開表SwitchboardItemsstrSQL="SELECT*FROM[SwitchboardItems]"strSQL=strSQL&"WHERE[ItemNumber]>0AND[SwitchboardID]="&Me!

[SwitchboardID]strSQL=strSQL&"ORDERBY

[ItemNumber];"Setrs=GetRs(strSQL)If(rs.EOF)ThenMe![lbl1].Caption="此切換面板頁上無項目。"ElseWhile(Not(rs.EOF))Me("btn"&rs![ItemNumber]).Visible=TrueMe("lbl"&rs![ItemNumber]).Visible=TrueMe("lbl"&rs![ItemNumber]).Caption=rs![ItemText]rs.MoveNextWendEndIf'關閉數(shù)據(jù)集合和數(shù)據(jù)庫rs.CloseSetrs=NothingEndSub其中,F(xiàn)illbtns()子過程為實現(xiàn)“主切換面板”上控件數(shù)量和控件標題等信息。第106頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體添加“成為當前”事件過程此時Fillbtns過程視圖以下所表示。第107頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體添加“加載”事件過程單擊【加載】行小箭頭,在下拉列表框中選擇“事件過程”選項,以下列圖所表示。單擊右邊省略號按鈕,進入VBA編輯器,系統(tǒng)自動建立了一個“Form_Load()”過程,在該過程中加入以下所表示代碼。PrivateSubForm_Load()IfNotcheckThenMsgBox("請先登錄!")DoCmd.CloseDoCmd.OpenForm("登錄")EndIfEndSub這幾句代碼作用,就是當用戶打開該窗體時,系統(tǒng)先檢驗全局布爾變量Check值,假如Check值為False則彈出提醒用戶先登錄對話框。這么以確保用戶在打開該切換面板前已經(jīng)登錄。第108頁11.7.3“主切換面板”窗體代碼此時【代碼】窗口以下列圖所表示。為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體添加“加載”事件過程第109頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體添加“打開”事件過程單擊【打開】行小箭頭,在下拉列表框中選擇“事件過程”選項,以下列圖所表示。單擊右邊省略號按鈕,進入VBA編輯器,系統(tǒng)自動建立了一個“Form_Open()”過程,在該過程中加入以下所表示代碼。PrivateSubForm_Open(CancelAsInteger)OnErrorGoToForm_Open_Err'顯示默認選項Me.Filter="[ItemNumber]=0AND[Argument]='默認'"Me.FilterOn=TrueForm_Open_Exit:ExitSubForm_Open_Err:MsgBoxErr.DescriptionResumeForm_Open_ExitEndSub這組代碼含義就是使用戶在打開該主切換面板時,有默認選擇值。第110頁11.7.3“主切換面板”窗體代碼為“主切換面板”窗體加上各種事件過程。為“主切換面板”窗體添加“打開”事件過程此時【代碼】窗口以下列圖所表示。這么就完成了主導航面板設計工作,雙擊導航窗格中“主切換面板”窗體,假如用戶還沒有登錄,則會彈出用戶還沒有登錄提醒對話框,以下列圖所表示。單擊【確定】按鈕后,自動打開“登錄窗體”進行登錄。登錄以后,即可打開“主切換面板”窗體,以下列圖所表示。第111頁11.7.4“員工考勤統(tǒng)計查詢”窗體代碼我們在上面建立了一個“員工考勤統(tǒng)計查詢”查詢,并基于該查詢建立了“員工考勤統(tǒng)計查詢報表”,用戶還記得,我們在上面查詢或報表中進行調(diào)試時,都是要手工在彈出參數(shù)對話框中輸入各種查詢參數(shù),以下列圖所表示。在這一節(jié)中,我們將利用建立“員工考勤統(tǒng)計查詢”窗體,代替上面各個參數(shù)值對話框,實現(xiàn)考勤統(tǒng)計查詢功效。第112頁11.7.4“員工考勤統(tǒng)計查詢”窗體代碼已知“員工考勤統(tǒng)計查詢”窗體中各種控件名稱等屬性以下表。類

型名

稱標

題標簽員工號標簽員工號:標簽開始時間標簽開始時間:標簽結束時間標簽結束時間:文本框員工號文本框開始時間文本框結束時間按鈕考勤查詢按鈕取消第113頁11.7.4“員工考勤統(tǒng)計查詢”窗體代碼為“員工考勤統(tǒng)計查詢”窗體添加各種事件過程。向“員工考勤統(tǒng)計查詢”窗體添加“加載”事件過程第一步:在“員工考勤統(tǒng)計查詢”窗體【設計視圖】中單擊“考勤查詢”按鈕。第二步:給“考勤查詢”按鈕控件添加“單擊”事件過程。將【屬性表】切換到【事件】選項卡,在【單擊】行中選擇“事件過程”選項,并單擊右邊省略號按鈕,以下列圖所表示。第三步:系統(tǒng)進入VBA編輯器,并自動新建了一個名稱為“考勤查詢_Click()”Sub過程。第114頁11.7.4“員工考勤統(tǒng)計查詢”窗體代碼為“員工考勤統(tǒng)計查詢”窗體添加各種事件過程。向“員工考勤統(tǒng)計查詢”窗體添加“加載”事件過程第四步:在【代碼】窗口中輸入以下所表示VBA代碼,給按鈕控件添加“單擊”事件過程。PrivateSub考勤查詢_Click()IfIsNull([員工號])OrIsNull([開始時間])OrIsNull([結束時間])ThenMsgBox"您必須輸入員工號、開始時間和結束時間。"DoCmd.GoToControl"開始時間"ElseIf[開始時間]>[結束時間]Then

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論