Tải bản đầy đủ (.doc) (18 trang)

bài tập access 2

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (263.35 KB, 18 trang )

ACCESS 2 : PHẦN BÀI TẬP
Tập tin CSDL là QLSV.mdb
Bài 1:
Các yêu cầu xử lý chính:
Bộ nút di chuyển có xử lý thông báo lỗi bằng tiếng Việt (không dấu) khi không thể
di chyển được nữa
Nút Thêm: cho phép thêm mới một mẫu tin
Nút Hủy: nếu Khoa hiện hành trên form không có sinh viên thì cho hủy, ngược lại
thì không.
Nút Thoát: đóng form, trước khi thoát có hỏi lại người dùng.

Bài 2:

Các yêu cầu xử lý chính:
Bộ nút di chuyển có xử lý thông báo lỗi bằng tiếng Việt (không dấu) khi không thể
di chyển được nữa
Nút Thêm: cho phép thêm mới một mẫu tin
Nút Hủy: nếu Khoa hiện hành trên form không có sinh viên thì cho hủy, ngược lại
thì không.
Nút Thoát: đóng form, trước khi thoát có hỏi lại người dùng.
Nút : hiện ra form Bài 1 để thêm 1 Khoa
Mã khoa: là 1 combo box chứa các Khoa, gồm 2 cột: MAKH, TENKH
Phái: là combo box cho phép chọn Nam hay Nữ (tương ứng với các giá trò -1 và 0)
Khi thêm, sửa trên subform:
Combo Mã môn chứa các môn học, gồm 2 cột: MAMH, TENMH
Kiểm tra Điểm nằm trong khoảng từ 0 -> 10
Bài 3:
Các yêu cầu xử lý chính:
Bắt đầu chạy form thì mờ đi 2 nút Ghi, Không
List box chứa danh sách tất cả các môn học
Bộ nút di chuyển có xử lý sáng/mờ khi không thể di chyển được nữa


Nút Thêm: cho phép thêm mới 1 mẫu tin trên form, khi đó cho sáng lại 2 nút Ghi,
Không và mờ đi các nút chức năng còn lại.
- 2 -
Nút Ghi, Không: thực hiện ghi hoặc không ghi mẫu tin. Khi thực hiện thành công sẽ
mờ đi 2 nút này và sáng các nút chức năng còn lại.
Nút Hủy: hủy môn học hiện hành, nếu môn học đó đã có điểm thì không cho phép
xóa.
Nút Tìm: cho phép tìm theo cột MAMH bằng form tìm của Access
Nút Thoát: đóng form, trước khi thoát có hỏi lại người dùng.
Khi chọn 1 môn học trong list box, thì mẫu tin hiện hành trên form sẽ tương ứng với
giá trò được chọn trong list box.
Khi di chuyển mẫu tin hiện hành trên form, vệt sáng trong list box cũng tương ứng
tại vò trí MAMH hiện hành trên form.

Bài 4:
Các yêu cầu xử lý chính:
Ban đầu khi chưa chọn Mã khoa, form không thể hiện dữ liệu.
Combo Chọn mã khoa chứa tất cả các khoa, gồm 2 cột: MAKH, TENKH
List box SV chứa danh sách các sinh viên theo khoa được chọn ở combo Chọn mã
khoa
Subform Kết quả chứa kết quả các môn học của sinh viên được chọn trong list box
SV
- 3 -
Khi chọn 1 mã khoa, tên khoa tự động hiện ra. Khi đó, liệt kê các sinh viên thuộc
khoa đó trong list box SV.
Ô Tổng số sinh viên: đếm tổng số sinh viên hiện có trong list
Ô Điểm trung bình: tính điểm trung bình của sinh viên được chọn trong list SV
Ô Tổng số môn đậu: đếm số môn đậu của sinh viên được chọn trong list SV
Ô Tổng số sinh viên trong khoa: đếm số sinh viên của khoa được chọn trong combo
Mã khoa

Ô Xếp loại: ĐTB >= 9 : Giỏi ĐTB >= 7 : Khá ĐTB >= 5 : TB
Nút In báo cáo: xuất báo cáo Điểm thi của sinh viên theo khoa ( Phần Report 2) ra
màn hình. Lưu ý chỉ đưa ra thông tin liên quan đến khoa được chọn trong combo Mã
khoa.
Bài 5:
Trang 1: Cập nhật
Trang 2: Liệt kê
- 4 -
Các yêu cầu xử lý chính:
Các yêu cầu chức năng ở trang Cập nhật tương tự như Bài 3
List box môn học chứa danh sách tất cả các môn học.
Khi mới di chuyển sang trang Liệt kê, vệt sáng trong list box phải tương ứng với giá
trò của MAMH ở trang Cập nhật.
Ngược lại, khi chọn 1 môn học trong list box và trở về trang Cập nhật thì mẫu tin
hiện hành của form phải tương ứng với giá trò vừa chọn trong list box.
Ô Tổng số môn học: đếm tổng số môn học đang có trong list box.
Bài 6:
Các yêu cầu xử lý chính:
Combo Chọn cột cho phép chọn các cột có trên form nhằm mục đích tìm kiếm, sắp
xếp, lọc dữ liệu theo cột vừa chọn.
Ô Giá trò tìm/ lọc dữ liệu cho phép nhập vào giá trò cần tìm hoặc giá trò cần lọc tương
ứng với tên cột được chọn trong combo Chọn cột.
Nút Tìm kiếm: thực hiện tìm theo cột được chọn trong combo Chọn cột với giá trò tìm
được nhập trong ô Giá trò tìm/ lọc dữ liệu.
- 5 -
Nút Sắp xếp: thực hiện sắp xếp theo tên cột được chọn trong combo Chọn cột với
dạng sắp xếp đã chọn.
Nút Lọc dữ liệu: thực hiện lọc dữ liệu theo tên cột được chọn trong combo Chọn cột
với giá trò lọc được nhập trong ô Giá trò tìm/ lọc dữ liệu.
Nút Hủy lọc: hiện lại tất cả mẫu tin trên form.

Group Lọc trực tiếp theo Phái: thực hiện lọc dữ liệu theo PHÁI. Mục Tất cả chức
năng giống hủy lọc.
Nút Thoát: đóng form, trước khi thoát có hỏi lại người dùng.
Bài 7:
a. Tạo Menu sau:

Các yêu cầu xử lý chính:
Mở Bảng : chứa tất cả các bảng trong CSDL là QLSV.mdb
Mở Form : chứa tất cả các form trong CSDL là QLSV.mdb
Mở Report : chứa tất cả các report trong CSDL là QLSV.mdb
Mở Query : chứa tất cả các query trong CSDL là QLSV.mdb
HELP : chọn Thông tin sẽ hiển thò

chọn Thoát sẽ đóng lần lượt .
b. Tạo Toolbar sau:
- 6 -
Các yêu cầu xử lý chính:
Gắn TOOLBAR này vào form Bài 1 ở trên.
Thiết lập các bộ nút di chuyển.
đóng form hiện hành.
HƯỚNG DẪN
Bài 1:
Tạo Macro nhóm như sau:
Bài 2:
Tạo Macro nhóm như sau:
- 7 -
Baøi 3:
Taïo Macro nhoùm nhö sau:
- 8 -
Bài 4:

Tổng số sinh viên: =DCount("masv","sinhvien")
Điểm trung bình: =DAvg("diem","ketqua","masv='" & [lstsv] & "'")
Tổng số môn đậu: =DCount("mamh","ketqua","masv='" & [lstsv] & "' and
diem>=5 ")
Tổng số môn rớt: =DCount("mamh","ketqua","masv='" & [lstsv] & "' and diem<5
")
Xếp loại:
=IIf([txtdtb]>=9,"Giỏi",IIf([txtdtb]>=7,"Khá",IIf([txtdtb]>=5,"Trung
bình","Yếu")))
Tổng số sinh viên trong Khoa: =DCount("masv","sinhvien","makh='" &
[cbomakh] & "'")
Bài 5:
Tạo Macro nhóm như sau:
Action Arguments của GotoControl
Action Arguments của FindRecord
Action Arguments của SetValue
Bài 6:
Tạo Macro nhóm như sau:
- 9 -
Bài 7:
Dùng các lệnh All Tables, All Forms, All Reports, All Queries, All Macros
Thao tác gắn Toolbar vào form: chọn thẻ Others \ Toolbar.
- 10 -
ACCESS 3 : PHẦN BÀI TẬP
Tập tin CSDL là QLSV.mdb
Sử dụng VBA (Visual Basic for Applications)

Bài 1:
Yêu cầu:
Thiết kế giống Form hộp thoại trên.

Nhấn nút Chào: sẽ hiển thò lời chào: “Chào mừng bạn đến học phần ACCESS
3.”
Nhấn nút Thoát: sẽ đóng Form.
Bài 2:
Yêu cầu:
Nhập tên cho textbox Tên (Name: txtten). Nhấn vào nút Thông Báo thì textbox
Thông báo (Name: txtthongbao) sẽ xuất hiện chuỗi “Chào bạn ” cùng với tên vừa
nhập cho textbox Tên ở trên.
Nút Xoá: xoá trắng 2 text box. Con trỏ sẽ nằm tại txtten.
- 11 -
Nút Thoát: đóng form
Bài 3:
Yêu cầu:
Khi nhấn nút Tính:
Sẽ tính điểm trung bình và hiển thò điểm trung bình tại txtDTB.
Sau đó hiển thò kết quả xếp loại học tập của học sinh tại txtXL.
Biết rằng: Điểm trung bình = 10 : Xuất sắc
10 >Điểm trung bình >=9 : Giỏi
8 >Điểm trung bình >=7 : Khá
7 >Điểm trung bình >=5 : Trung bình
Ngược lại : Yếu
Bài 4:
- 12 -
Yêu cầu xử lý chức năng:
Khi click vào nút Danh sách sinh viên thì cho mở Report1 và lọc nguồn dữ liệu theo
Khoa đang chọn trong combo box.
Khi click vào nút Bảng điểm thì cho mở Report2 và lọc nguồn dữ liệu theo sinh viên
đang chọn trên listbox.
Các thao tác thêm, xóa, sửa thông tin điểm thi của sinh viên sẽ được thực hiện trực
tiếp trên subform

Mã môn học của subform là 1 combo box dùng để liệt kê tất cả những môn học chưa
có điểm của sinh viên đang chọn trên listbox.
Tên môn học không cho chỉnh sửa, giá trò sẽ tự động hiển thò sau khi chọn một mã
môn có trong danh sách của combo box mã môn.
Yêu cầu xử lý lỗi:
Khoa chỉ cho phép chọn 1 trong những giá trò có trong danh sách của combo box.
Nếu người dùng nhập 1 giá trò không tồn tại trong danh sách phải thông báo và yêu
cầu họ chọn lại giá trò cho Khoa.
Mã môn học chỉ cho phép chọn 1 trong những giá trò có trong danh sách của combo
box. Nếu người dùng nhập 1 giá trò không tồn tại trong danh sách phải thông báo và
yêu cầu họ chọn lại giá trò cho Mã môn học.
Điểm phải từ 0 đến 10
Điểm phải là kiểu số.
Bài 5:
- 13 -
Yêu cầu xử lý chức năng:
Các thao tác thêm, xóa, sửa thông tin của sinh viên sẽ được thực hiện trực tiếp trên
subform. Giới tính trong subform là 1 combo box liệt kê 2 giá trò là Nam và Nữ.
Các thao tác thêm, xóa, sửa thông tin điểm thi của sinh viên sẽ được thực hiện trực
tiếp trên subform
Mã môn trong subform là 1 combo box liệt kê những môn chưa có điểm của sinh
viên hiện hành.
Tên môn học không cho chỉnh sửa, giá trò sẽ tự động hiển thò sau khi chọn 1 mã môn
có trong danh sách của combo box Mã môn.
Yêu cầu xử lý lỗi:
Combo box Khoa giống bài 4
Combo box Mã môn học giống bài 4
Giới tính chỉ cho phép chọn 1 trong những giá trò có trong danh sách của combo box.
Nếu người dùng nhập 1 giá trò không tồn tại trong danh sách phải thông báo và yêu
cầu họ chọn lại giá trò cho Giới tính.

Tuổi từ 18 đến 70
Điểm từ 0 đến 10
Học bổng từ 0 đến 1.000.000
Ngày phải là kiểu ngày
Điểm phải là kiểu số.
Bài 6:
- 14 -
Yêu cầu xử lý chức năng:
Lọc dữ liệu của sub theo 2 điều kiện là Tuổi của sinh viên và Khoa mà sinh viên
đang theo học
Điều kiện lọc của tuổi là Lớn hơn hay Nhỏ hơn giá trò nào đó. Sử dụng một combo
box để người sử dụng chọn phép toán cần lọc.
Điều kiện lọc của Khoa theo 1 tên khoa. Sử dụng combo box liệt kê danh sách
những tên khoa hiện có trong CSDL.
Khi click vào nút Lọc thì subform sẽ hiển thò những sinh viên thỏa điều kiện lọc. Chỉ
lọc nếu điều kiện chứa giá trò lọc có dữ liệu, nếu không thì sẽ bỏ qua điều kiện lọc
nào không có giá trò.
Khi click vào nút Bỏ lọc thì dẽ hiển thò tất cả dữ liệu của subform như khi lọc dữ
liệu.

HƯỚNG DẪN
Bài 1:
CODE CHO NÚT CHÀO:
Private Sub CMDCHAO_Click()
MsgBox " Chào mừng bạn đến học phần ACCESS 3"
End Sub
CODE CHO NÚT THOÁT:
Private Sub cmdthoat_Click()
- 15 -
DoCmd.Close

End Sub
Bài 2:
CODE CHO NÚT THÔNG BÁO:
Private Sub cmdtb_Click()
txttb = "Chào bạn " & " " & txtnt & " !!!"
End Sub
CODE CHO NÚT XÓA:
Private Sub cmdxoa_Click()
txtnt = ""
txttb = ""
txtnt.SetFocus
End Sub
Bài 3:
CODE CHO NÚT TÍNH:
Private Sub cmdtinh_Click()
txtdiemtb = (Val(txttoan) * 2 + Val(txtly) + Val(txthoa)) / 4
Select Case txtdiemtb
Case 10
txtXL = "Xuất sắc"
Case Is >= 9
txtXL = "Giỏi"
Case Is >= 7
txtXL = "Khá"
Case Is >= 5
txtXL = "Trung bình"
Case Else
txtXL = "Yếu"
End Select
End Sub
- 16 -

Bài 4:
CODE CHO NÚT DANH SÁCH SINH VIÊN:
Private Sub Command12_Click()
DoCmd.OpenReport "Report1”, acViewPreview, , "makh=forms!bai4!
cbokhoa"
End Sub
CODE CHO NÚT BẢNG ĐIỂM:
Private Sub Command13_Click()
DoCmd.OpenReport " Report2", acViewPreview, , "masv=forms!bai4!lstsv"
End Sub
T ạ i On Not in List c ủ a combo box:
Private Sub MAMH_NotInList(NewData As String, Response As Integer)
Response = 0
MsgBox "Ban phải chọn giá trị có trong ComboBox", vbYesNo, "Thơng Báo"
End Sub
T ạ i Before Update c ủ a textbox:
Private Sub DIEM_BeforeUpdate(Cancel As Integer)
If (DIEM < 0 Or DIEM > 10) Then
MsgBox "Điểm phải từ 0 đến 10", vbYesNo, "Thông Báo"
Cancel = True
End If
End Sub
T ạ i On Error c ủ a formsub:
Private Sub Form_Error(DataErr As Integer, Response As Integer)
Response = 0
Select Case DataErr
Case 2113:
MsgBox "Điểm phải là kiểu dữ kiệu số !"
Case Else
MsgBox "Lỗi khác !"

- 17 -
End Select
End Sub
Baứi 6:
CODE CHO NUT LOẽC:
Private Sub cmdloc_Click()
If cbopheptinh = 1 Then
Me.sub2.Form.FilterOn = True
Me.sub2.Form.Filter = " tuoi>" & txttuoi & "and makh='" & cbokhoa & "'"
Else
Me.sub2.Form.FilterOn = True
Me.sub2.Form.Filter = " tuoi<" & txttuoi & "and makh='" & cbokhoa & "'"
End If
End Sub
CODE CHO NUT BO LOẽC:
Private Sub cmdhuy_Click()
DoCmd.ShowAllRecords
End Sub
- 18 -

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×