You are on page 1of 47

ĐỀ ÔN THI SỐ 1

Thời gian làm bài : 120 phút

Câu 1 : Thiết kế bảng - Tạo mối quan hệ - Nhập dữ liệu vào bảng theo các yêu cầu sau
- khachhang : MAKH(T,4); TENKHACH(T,10); DIACHI(T,40)
- Sudung : MASD(T,2); LOAISD(T,15); DONGIA(N,Int)
- Chitiet : MASD(T,2); MAKH(T,4); SOKW(N,Int); THANHTIEN(N,Double)

Câu 2 : Tạo các Query thực hiện các yêu cầu sau
1. Tính cột THANHTIEN trong bảng CHITIET biết
THANHTIEN = SOKW*DONGIA, nếu SOKW<=100
dongia giữ nguyên; nếu 100<SOKW<=200 dongia được
tính gấp 1,5 lần; nếu SOKW>200 dongia dược tính gấp
2 lần.
2. Tìm danh sách hộ phải trả tiền điện nhiều nhất.
3. Thêm dữ liệu “KH07”; “NAM”; “10 KHU DÂN CƯ
CHÍNH NGHĨA” vào bảng KHACHHANG.
Câu 3 : Tạo Form TIENDIEN như hình sau; yêu cầu :
1. Thiết kế form đúng yêu cầu.
2. Tính đúng tổng thành tiền.
3. MAKH duy nhất và không được rỗng.
4. Các nút lệnh thực hiện đúng chức năng, nút xóa có cảnh
báo tiếng Việt.

1
Câu 4 : Tạo Report HOADON như hình sau

Câu 5 : Tạo Form điều khiển như hình sau, yêu cầu:
1. Chọn Form tiền điện và nhấn nút thực hiện sẽ mở form tiendien
2. Chọn Report hóa đơn và nhấn nút thực hiện sẽ mở report hoadon ra trên màn hình.

2
HƯỚNG DẪN GIẢI ĐỀ ÔN THI TÔT NGHIỆP – ĐỀ SỐ 01
Câu 1 :
a. Thiết kế bảng dữ liệu :
- Bảng Khachhang : Với MAKH chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MAKH)
- Bảng Sudung : Với MASD chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MASD)
- Bảng Chitiet : Với MASD chọn Require = YES; Index = Yes, duplicated OK; Với MAKH chọn
Require = YES; Index = Yes, duplicated OK; (đặt khóa MASD;MAKH)
b. Tạo mối quan hệ : Tạo mối quan hệ như hình sau

Right click trên bảng CHITIET chọn Table design  chọn MASD  Click thẻ Lookup  Click phần
display Control  chọn Combo box  trong phần Row Source click chọn bảng SUDUNG  chọn MAKH
 Click thẻ Lookup  Click phần display Control  chọn Combo box  trong phần Row Source click
chọn bảng KHACHHANG  Click nút Save  Close thiết kế bảng  đóng cửa sổ tạo mối quan hệ.

c. Nhập dữ liệu : Nhập bảng khachhang; bảng sudung; bảng chitiet


Câu 2 : Thực hiện các query
a. Chọn các bảng tham gia truy vấn Chitiet; Sudung  chọn loại truy vấn Update Query  đưa field
thanhtien vao lưới QBE  trong UPDATE TO nhập công thức sau :
iif([sokw]<100;[dongia]* [sokw]; iif([sokw]<=200; [dongia]*100+([sokw]-100)*
[dongia]*1,5;[dongia]*100+100*[dongia]*1,5 +([sokw]-200)*[dongia]*2))
b. Đầu tiên tạo một truy vấn phụ (Query 21) tính tổng số điện tiêu thụ của từng khách hàng : đưa bảng
chitiet vào tham gia truy vấn  Chọn field MAKH (group by), Tongtien: Thanhtien (sum).
- Tạo một truy vấn tạm tìm số tiền trả nhiều nhất : đưa bảng Query 21 vào tham gia truy vấn  chọn
field tongtien (MAX)  chọn chế độ SQL VIEW copy câu lệnh SQL (bỏ dấu ;)  đóng truy vấn tạm
không cần SAVE.
- Tạo truy vấn chính để tìm khách hàng trả tiền điện nhiều nhất : Chọn Query 2N và bảng khachhang
 đưa vào lưới truy vấn các field MAKH; TENKHACH; DIACHI; TONGTIEN  tại phần criteria
của TONGTIEN dán câu lệnh đã copy vào trong cặp dấu ngoặc đơn)
c. Đưa bảng khachhang vào tham gia truy vấn  chọn loại truy vấn Append query  nhập “KH07”;
“NAM”; “10 khu dân cư Chánh Nghĩa” vào hàng field Chọn MAKH, TENKhach; DIACHI trong
phần append to  Click lệnh Run  SAVE query

Câu 3 : Tạo form THEO DÕI KINH DOANH


a. Click create form by using wizard  lần lượt chọn các field MAKH, TENKHACH; DIACHI (bảng
khachhang); MASD (bảng chitiet); Loaisd(bảng sudung); SOKW (chitiet); dongia (sudung);
3
thanhtien(chitiet)  Click Next  click Next  click Next  Chọn kiểu Industrial  click next 
đặt tên form là THEO DOI KINH DOANH  click finish.
b. Về chế độ design view  sửa đổi thiết kế lại giống như trong bài  click chọn nút Textbox  vẽ text
box dưỡi form phụ  đặt tên tổng tiền  trong text box nhập công thức sau :
=dsum(“thanhtien”;“chitiet”;“makh=form.makh”).
c. Tạo nút lệnh bằng Wizard, riêng nút xóa không tạo bằng Wizard mà vẽ nút lệnh  r.click  chọn
properties  Chọn Event Chọn On Click  chọn Macro Builder  đặt tên cho Macro là canhbao 
Click View  Conditions  nhập và trình bày Macro như hình vẽ sau  Click save  trở về cửa sổ
tạo form.

d. R.click MAKH chọn properties  chọn thẻ Event  chọn before Update  chọn macro builder  đặt
tên macro kiemtra  thực hiện macro như hình sau  Save macro và đóng cửa sổ macro  chọn On
Lost focus  thực hiện macro như hình sau  chọn macro builder  đặt tên macro kiemtra2 Save
macro và đóng cửa sổ macro

Câu 4 : Tạo báo cáo HÓA ĐƠN TIỀN ĐIỆN


a. Click create REPORT by using wizard  lần lượt chọn các field MAKH, TENKHACH; DIACHI (bảng
khachhang); MASD (bảng chitiet); Loaisd(bảng sudung); SOKW (chitiet); dongia (sudung);
thanhtien(chitiet)  Click Next  click Next  click Next  Click chọn Summary option  đánh
dấu kiểm vào phần Sum - thanhtien  click OK  CLick Next  Chọn kiểu Align Left 2  CLick
Next  Chọn hình thức Bold  đặt tên cho report HOADON  Click Finish
b. Trở về cửa sổ design trình bày report như hình sau

Câu 4 : Tạo FORM điều khiển


a. Về phần form  chọn create form in design view  tạo Label có tiêu đề MỞ CÁC ĐỐI TƯỢNG 
Click chọn Option Group  vẽ Group lên màn hình  trong cửa sổ Wizard lần lượt nhập vào 2 dòng :

4
FORM TIỀN ĐIỆN; REPORT HÓA ĐƠN  Click nút Next  chọn No, I don’t want a default 
Click Next  click Next  CLick chọn check box  CLick Next  CLick Finish
b. Xóa Label Frame1 Right click trên khung vuông của option group  properties  Chọn Other 
Click Name và nhập vào tên dieukhien (Xem hình)  đóng hộp thoại Properties

c. Vẽ nút lệnh thựchiện  Right click nút lệnh  properties  Chọn Onclick  Chọn Macro builder 
đặt tên macro là DIEUKHIEN  CLICK view chọn condition  thực hiện như hình

d. Dùng Wizard để tạo ra nút lệnh đóng.


e. Ta được form điều khiển có hình dạng như sau :

5
ĐỀ ÔN THI SỐ 2
Thời gian làm bài : 120 phút

Câu 1 : Thiết kế bảng - Tạo mối quan hệ - Nhập dữ liệu vào bảng theo các yêu cầu sau
- DMDV : (MADV(T,2); TENDV(T,15); DIACHI(T,40)
- BANGLUONG : MANV(T,4); HOTEN(T,20); DIACHI(T,30); MADV(T,2); HSLUONG(N,Single);
NGAYCONG(N,byte).

Câu 2 : Tạo Query thực hiện những yêu cầu sau


4. Tính lương cho các nhân viên, gồm các thông tin sau : MANV; HOTEN; DIACHI; MADV;
HSLUONG; NGAYCONG, LUONGLINH với lương lĩnh tính theo công thức : HSLUONG *
290000/30*NGAYCONG với điều kiện nếu số ngày công >24 ngày thì số ngày dư ra được tính gấp đôi
5. Tìm danh sách nhân viên có số công cao nhất : MANV; HOTEN, MADV, NGAYCONG
6. Tạo bảng THONGKE gồm các thông tin MADV; TENDV; TONGLUONG
7. Thay tên “CỬA HÀNG SỐ ...” trong bảng DMDV thành “SIÊU THỊ SỐ ...”
Câu 3 : Tạo Form TONGHOP như hình trang sau, yêu cầu :
5. Thiết kế form đúng yêu cầu.
6. Tính đúng tổng lương
7. MADV dạng combo box; tên đơn vị, địa chỉ tự động hiển thị
8. Các nút lệnh thực hiện đúng chức năng, nút xóa có cảnh báo tiếng Việt.
Câu 4 : Tạo báo cáo BANGLUONGNHANVIEN như trang sau :

6
Câu 5 : Tạo menu sau, yêu cầu :

7
HƯỚNG DẪN GIẢI ĐỀ ÔN THI SỐ 02
Câu 1 :
a. Thiết kế bảng dữ liệu :
- Bảng DMDV : Với MADV chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MADV)
- Bảng BANGLUONG : Với MANV chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MANV)
b. Tạo mối quan hệ : Tạo mối quan hệ như hình sau

Right click trên bảng BANGLUONG chọn Table design  chọn MADV  Click thẻ Lookup  Click
phần display Control  chọn Combo box  trong phần Row Source click chọn bảng DMDV  Click nút
Save  Close thiết kế bảng  đóng cửa sổ tạo mối quan hệ.
c. Nhập dữ liệu : Nhập bảng DMDV; sau đó nhập bảng Bangluong
Câu 2 : Thực hiện các query
a. Chọn các bảng tham gia truy vấn : BANGLUONG  chọn đưa các field MANV; HOTEN; DIACHI;
MADV; HSLUONG; NGAYCONG, vào lưới QBE  tạo field mới LUONGLINH như sau :
LUONGLINH : [HSLUONG]*290000/30*IF([NGAYCONG]<=24; [NGAYCONG]; 24+
([NGAYCONG] -24)*2)  Click nút lệnh RUn để thực hiện  Save truy vấn với tên Query1.
b. Đầu tiên tạo một truy vấn tạm tìm số công cao nhất : đưa bảng BANGLUONG vào tham gia truy vấn
 Chọn field NGAYCONG (MAX), Click view  SQL VIEW copy câu lệnh SQL (không copy dấu ;)
 đóng truy vấn tạm không cần SAVE.
- Tạo truy vấn chính để tìm nhân viên có ngày công cao nhất : Chọn bảng BANGLUONG  đưa vào
lưới truy vấn các field MANV; HOTEN; DIACHI; MADV; NGAYCONG;  tại phần criteria của
NGAYCONG dán câu lệnh đã copy vào trong cặp dấu ngoặc đơn  Save với tên Query2
c. Đưa bảng DMDV, QUERY1 vào tham gia truy vấn  chọn loại truy vấn Make table query  đặt tên
cho bảng là THONGKE  chọn các field MADV (group by), TENDV (group by), TONGLUONG :
LUONGLINH (sum) vào lưới truy vấn  click Run  chọn yes  lưu truy vấn với tên QUERY3
d. Đưa bảng DMDV vào tham gia truy vấn  chọn loại truy vấn update query  chọn field TENDV vào
QBE trong hàng Field  trong hàng Update to nhập biểu thức : “SIÊU THỊ SỐ
“&RIGHT([TENDV];2) trong phần Criteria nhập điều kiện “CỬA HÀNG SỐ*” click Run  chọn
yes  lưu truy vấn với tên QUERY3
Câu 3 : Tạo form TONGHOP
a. Click create form by using wizard  lần lượt chọn các field MADV, TENDV; DIACHI trong bảng
DMDV; MANV; HOTEN; DIACHI; HSLUONG; NGAYCONG; LUONGLINH trong QUERY1 
Click Next  click Next  click Next  Chọn kiểu Industrial  click next  đặt tên form là
TONGHOP  click finish.
b. Vẽ TEXTBOX tổng tiền; nhập công thức
=DSum("LUONGLINH";"BANGLUONG";"MADV=FORM.MADV")
c. Tạo nút lệnh bằng Wizard, riêng nút xóa không tạo bằng Wizard mà vẽ nút lệnh  r.click  chọn
properties  Chọn Event Chọn On Click  chọn Macro Builder  đặt tên cho Macro là canhbao 
Click View  Conditions  nhập và trình bày Macro như hình vẽ sau  Click save  trở về cửa sổ
tạo form.

8
d. Right Click Textbox MADV  chọn change to  chọn combo box  Right Click Textbox MADV 
chọn properties  chọn data  trong phần Control source xóa trống, phần Row sourrce nhập câu
lệnh SELECT [DMDV].[MADV] from [DMDV]; (có dấu ; cuối câu), phần default value nhập “01”
như hình trên
e. Click Event  chọn After Update  Code builder  nhập đoạn code sau vào giữa Private sub và End
sub :
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[MADV] = '" & Me![MADV] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
Câu 4 : Tạo báo cáo BANG LUONG NHÂN VIEN
a. Click create REPORT by using wizard  lần lượt chọn các field MADV, TENDV; trong bảng DMDV;
MANV; HOTEN; DIACHI; HSLUONG; NGAYCONG; LUONGLINH trong bảng QUERY1  Click
Next  click Next  click Next  Click chọn Summary option  đánh dấu kiểm vào phần SUM –
NGAYCONG; LUONGLINH  click OK  CLick Next  Chọn kiểu Align Left 2  CLick Next 
Chọn hình thức Bold  đặt tên cho report BANGLUONGNHANVIEN  Click Finish
b. Trở về cửa sổ design trình bày report như hình sau

Câu 5 : Tạo MENU điều khiển


a. Right click trên thanh menu  chọn Customize  xuất hiện cửa sổ Customize  chọn thẻ toolbars 
Click New  đặt tên cho toolbars là dieukhien  click OK
b. Click chọn thẻ Command  click chọn New menu  Kéo nút New Menu bên phần command thả lên
thanh toolbars mới tạo (kéo thả 3 nút) (Xem hình dưới)  Right click trên từng nút new menu và đặt
tên cho từng nút là &BANGDL; &MAUBIEU va BAOCAO; &THOAT..
c. Trong phần categories click chọn All tables  kéo bảng DMDV vào Menu BANGDL  đổi tên thành
Đơn vị  trong phần categories click chọn All Query  kéo Query1 vào Menu BANGDL  đổi tên
thành Bảng lương  làm tương tự cho Menu MAUBIEU-BAOCAO
d. Chọn lệnh File trong Categories  Kéo lệnh close trong command thả vào Menu THOAT sửa tên lại
thành RA DATABASE  kéo lệnh Exit thả vào MENU THOAT sửa tên thanh RA WINDOWS
e. Chọn Toolbars  CLick chọn DIEUKHIEN  chọn properties  trong phần type của hộp thoại click
chọn Menu Bar  đóng hộp thoại customize

9
10
ĐỀ ÔN THI SỐ 3
Thời gian làm bài : 120 phút

Câu 1 : Thiết kế bảng - Tạo mối quan hệ - Nhập dữ liệu vào bảng theo các yêu cầu sau
- Hoadon : (SOHD(T,3); NGAY(D,Short date); MACAY(T,5)
- Hanghoa : MAHH(T,4); TENHANG(T,15); DONVITINH(T,10); DONGIA(N,Single);
- Chitietbanle : SOHD(T,3); MAHH(T;4); SOLUONG(N,Int);
- Cayxang : MACAY(T,5); TENCAY(T,12); DIACHI(T,25).

Câu 2 : Tạo Query thực hiện những yêu cầu sau


1. Tính tiền trả khi mua hàng gồm các thông tin sau : SOHD; MAHH; SOLUONG; THANHTIEN với
thanhtien tính theo công thức : THANHTIEN=SOLUONG * DONGIA với điều kiện nếu SOLUONG
>=300 được giảm 5%
2. Thông tin danh sách những cây xăng bán nhiều tiền nhất : MACAY; TENCAY, DIACHI, TSTIEN.
3. Thêm thông tin : “T004”; “Cây số 4”; “Thị xã TDM” vào bảng CAYXANG
4. Đổi ký hiệu “T” trong MACAY tất cả các cây xăng thành “CH” ví dụ T001 thành CH001
Câu 3 : Tạo Form HOADON như hình trang sau, yêu cầu :
1. Thiết kế form đúng yêu cầu.
2. Khi thêm mẩu tin mới SOHD không được để trống, không được trùng lặp
3. MACAY, MAHH dạng combo box; tencayxang; diachi, tenhang, donvitinh, soluong, dongia, thanhtien
tự động thực hiện
4. Tính đúng tổng tiền, tổng tiền tự động cập nhật khi dữ liệu trong forrm con thay đổi
5. Các nút lệnh thực hiện đúng chức năng, nút xóa có cảnh báo tiếng Việt.
Câu 4 : Tạo báo cáo TONGHOP như trang sau :

11
Câu 5 : Tạo form dieukhien như hình sau , yêu cầu khi nhấn nút nào sẽ kích hoạt đối tượng tương ứng.

12
HƯỚNG DẪN GIẢI ĐỀ ÔN THI SỐ 03
Câu 1 :
a. Thiết kế bảng dữ liệu :
- Bảng HOADON : Với SOHD chọn Require = YES; Index = Yes, no duplicate. (đặt khóa SOHD)
- Bảng HANGHOA : Với MAHH chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MAHH)
- Bảng CAYXANG : Với MACAY chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MACAY)
- Bảng CHITIETBANLE : Với SOHD; MAHH chọn Require = YES; Index = Yes, duplicates OK. (đặt
khóa SOHD; MAHH)
b. Tạo mối quan hệ : Tạo mối quan hệ như hình sau

- Right click trên bảng HOADON chọn Table design  chọn MACAY  Click thẻ Lookup  Click
phần display Control  chọn Combo box  trong phần Row Source click chọn bảng CAYXANG 
Click nút Save  Close thiết kế bảng.
- Right click trên bảng CHITIETBANLE chọn Table design  chọn SOHD  Click thẻ Lookup 
Click phần display Control  chọn Combo box  trong phần Row Source click chọn bảng HOADON
 chọn MAHH  Click thẻ Lookup  Click phần display Control  chọn Combo box  trong phần
Row Source click chọn bảng HANGHOA  Click nút Save  Close thiết kế bảng.
- Save & đóng cửa sổ tạo mối quan hệ.
c. Nhập dữ liệu : Nhập bảng HANGHOA  CAYXANG  HOADON  CHITIET BANLE.
Câu 2 : Thực hiện các query
a. Chọn các bảng tham gia truy vấn : HANGHOA; CHITIETBANLE  đưa các field SOHD; MAHH;
SOLUONG của bảng CHITIETBANLE vào lưới QBE  tạo field THANHTIEN :
[SOLUONG]*[DONGIA]*IIF([SOLUONG]>=300;0,95;1)  lưu và đặt tên Query1.
b. Đầu tiên tạo một truy vấn phụ (đặt tên Query 2 phu)tính tổng số tiền bán của mỗi cây xăng : đưa bảng
QUERY1; HANGHOA vào tham gia truy vấn  Chọn field MACAY (group by), TST : THANHTIEN
(SUM)  Save
- Tạo truy vấn tạm để tìm số tiền lớn nhất : đưa bảng Query 2 phu tham gia truy vấn  click chọn field
TST (Max) vào lưới QBE  click View  SQL view  copy câu lệnh SQL (không copy dấu ;) 
đóng truy vấn tạm (không save)
- Tạo truy vấn chính để tìm cây xăng có TST bán nhiều nhất : Chọn bảng Query 2 phu; Cayxang tham
gia truy vấn  đưa vào lưới truy vấn các field MACAY; TENCAY; DIACHI; TST  tại phần criteria
của TST dán câu lệnh SQL đã copy vào trong cặp dấu ngoặc đơn  SAVE và đặt tên Query2
c. Đưa bảng CAYXANG vào tham gia truy vấn  chọn loại truy vấn Append query  nhập “T004”;
“Cây số 4”; “Thị xã TDM” vào ô field Chọn MACAY, TENCAY; DIACHI trong phần append to 
Click lệnh Run  SAVE query
d. Đưa bảng CAYXANG vào tham gia truy vấn  chọn loại truy vấn Update query  chọn field
MACAY vào lưới QBE  trong UPDATE TO nhập biểu thức : “CH”&RIGHT([MACAY];3) 
Click lệnh Run  SAVE query
Câu 3 : Tạo form HOADON
a. Click create form by using wizard  lần lượt chọn các field SOHD, NGAY; trong bảng HOADON;
MACAY; TENCAY; DIACHI trong bảng CAYXANG; MAHH (query1); TENHANG;
DONVITINH(HANGHOA); SOLUONG (query1); DONGIA(HANGHOA); THANHTIEN (query1) 
Click Next  click Next  click Next  Chọn kiểu Industrial  click next  đặt tên form là
HOADON , đặt tên cho form phụ là HOADON SUBFORM click finish.
b. Về chế độ design view  sửa đổi thiết kế lại giống như trong bài

13
c. Tạo nút lệnh bằng Wizard, riêng nút xóa không tạo bằng Wizard mà vẽ nút lệnh  r.click  chọn
properties  Chọn Event Chọn On Click  chọn Macro Builder  đặt tên cho Macro là canhbao 
Click View  Conditions  nhập và trình bày Macro như hình vẽ sau  Click save  trở về cửa sổ
tạo form.

d. R.click SOHD chọn properties  chọn thẻ Event  chọn before Update  chọn macro builder  đặt
tên macro kiemtra  thực hiện macro như hình sau  Save macro và đóng cửa sổ macro  chọn On
Lost focus  thực hiện macro như hình sau  chọn macro builder  đặt tên macro kiemtra2 Save
macro và đóng cửa sổ macro

e. Chọn phần form footer của subform  tạo một textbox  rightclick chọn properties  chọn thẻ
OTHER  đặt tên TONGCON trong phần NAME  đóng hộp thoại properties  nhập công thức
=SUM([THANHTIEN]) vào textbox TONGCON  Vẽ textbox tổng tiền trên FORM chính nhập công
thức = [hoadon subform].Form!TONGCON
Câu 4 : Tạo báo cáo TONGHOP
a. Click create REPORT by using wizard  lần lượt chọn các field MAHH, TENHANG; DONVITINH;
DONGIA trong bảng HANGHOA; SOHD, NGAY (hoadon); TENCAY(cayxang); SOLUONG,
THANHTIEN(query1)  Click Next  click Next  click Next  Click chọn Summary option 
đánh dấu kiểm vào phần SUM – SOLUONG và SUM - THANHTIEN  click OK  CLick Next 
Chọn kiểu Align Left 2  CLick Next  Chọn hình thức Bold  đặt tên cho report TONGHOP 
Click Finish
b. Trở về cửa sổ design trình bày report như hình sau

14
Câu 5 : Tạo FORM điều khiển
a. Về phần form  chọn create form in design view  tạo Label có nội dung “Hãy nhấn nút để ...” 
Click chọn Command button  vẽ 3 nút lệnh lên trên màn hình (không sử dụng Wizard) : TABLE
HÀNG HÓA; FORM HÓA ĐƠN; REPORT TỔNG HỢP.

b. Right Click nút TABLE HÀNG HÓA  Chọn


Properties  Event  On click  Macro Builder
 đặt tên MOBANG  thực hiện như hình vẽ
bên save  close Macro

c. Right Click nút FORM HÓA ĐƠN  Chọn


Properties  Event  On click  Macro Builder
 đặt tên MOFORM  thực hiện như hình vẽ bên
 Save  Close Macro

d. Right Click nút REPORT TỔNG HỢP  Chọn


Properties  Event  On click  Macro
Builder  đặt tên MOREPORT  thực hiện
như hình vẽ bên  Save  Close Macro

e. Mở form trong chế độ view  chạy thử các nút lệnh

15
ĐỀ ÔN THI SỐ 4
Thời gian làm bài : 120 phút

Câu 1 : Thiết kế bảng - Tạo mối quan hệ - Nhập dữ liệu vào bảng theo các yêu cầu sau
- Tuyenduong : (MATUYEN(T,4); TENTUYEN(T,40); SOKM(N,byte); GIAVE(N;int).
- Nhattrinh : SONT(T,3); NGAY(D,Short date); MAXE(T,4).
- Chitiet : SONT(T,3); MATUYEN(T;4); SOVE(N,byte)
- Dmxe : MAXE(T,4); TENXE(T,10); TENLAIXE(T,10); SOCHO(N,byte).

Câu 2 : Tạo Query thực hiện những yêu cầu sau


1. Tính thành tiền cho mỗi chuyến xe gồm các thông tin sau : SONT; MATUYEN; SOVE; THANHTIEN
với thanhtien tính theo công thức : THANHTIEN=SOVE * GIAVE với điều kiện nếu SOVE>SOCHO
được giảm 5% .
2. Thông tin danh sách những tuyến xe đạt doanh thu nhiều tiền nhất : MATUYEN; TENTUYEN,
SOKM, TSTIEN.
3. Tìm danh sách các xe chưa chạy tuyến nào bao gồm : MAXE; TENXE; TENLAIXE; SOCHO.
4. Thêm thông tin : “X005”; “611080”; “LỢI; 45 vào bảng DMXE

Câu 3 : Tạo Form TONGHOP như hình trang sau, yêu cầu :
1. Thiết kế form đúng yêu cầu.
2. MATUYEN, MAXE dạng combo box; TENTUYEN; SOKM, GIAVE, TENXE, TEN LAIXE,
THANHTIEN tự động thực hiện; khi thay đổi số vé thanhtien tự động thay đổi
3. Tạo công thức tính tổng tiền- Yêu cầu : tổng tiền tự động cập nhật khi dữ liệu trong forrm con thay đổi
4. Các nút lệnh thực hiện đúng chức năng, nút xóa có cảnh báo tiếng Việt.
Câu 4 : Tạo báo cáo NHATTRINH như trang sau :

16
Câu 5 : Tạo menu dieukhien như hình sau , yêu cầu khi nhấn nút nào sẽ kích hoạt đối tượng tương ứng.

17
HƯỚNG DẪN GIẢI ĐỀ ÔN THI SỐ 04
Câu 1 :
a. Thiết kế bảng dữ liệu :
- Bảng TUYENDUONG : Với MATUYEN chọn Require = YES; Index = Yes, no duplicate. (đặt khóa
MATUYEN)
- Bảng NHATTRINH : Với SONT chọn Require = YES; Index = Yes, no duplicate. (đặt khóa SONT)
- Bảng DMXE : Với MAXE chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MAXE)
- Bảng Chitiet : Với SONT; MATUYEN chọn Require = YES; Index = Yes, duplicated OK (đặt khóa
SONT;MATUYEN)
b. Tạo mối quan hệ : Tạo mối quan hệ như hình sau

- Right click trên bảng NHATTRINH chọn Table design  chọn MAXE  Click thẻ Lookup  Click
phần display Control  chọn Combo box  trong phần Row Source click chọn bảng DMXE  Click
nút Save  Close thiết kế bảng
- Right click trên bảng CHITIET chọn Table design  chọn SONT  Click thẻ Lookup  Click phần
display Control  chọn Combo box  trong phần Row Source click chọn bảng NHATTRINH  click
chọn MATUYEN  Click thẻ Lookup  Click phần display Control  chọn Combo box  trong
phần Row Source click chọn bảng TUYENDUONG  Click nút Save  Close thiết kế bảng  đóng
cửa sổ tạo mối quan hệ.
c. Nhập dữ liệu : Nhập bảng TUYENDUONG DMXE  NHATTRINH  CHITIET.
Câu 2 : Thực hiện các query
a. Chọn các bảng tham gia truy vấn CHITIET; TUYENDUONG,DMXE, NHATTRINH  đưa các field
SONT; MATUYEN, SOVE vao lưới QBE  TẠO FIELD THANHTIEN :
[SOVE]*[GIAVE]*IIf([SOVE]>[SOCHO];0,95;1)  Save query đặt tên Query1
b. Đầu tiên tạo một truy vấn phụ (Query 2phu) tính tổng số tiền thu được của từng tuyến : đưa bảng
QUERY1 vào tham gia truy vấn  Chọn field matuyen (group by), tongtien: thanhtien (sum).
- Tạo một truy vấn tạm tìm Số tiền thu nhiều nhất : đưa bảng Query 2phu vào tham gia truy vấn 
chọn field tongtien (MAX)  chọn chế độ SQL VIEW copy câu lệnh SQL (bỏ dấu ;)  đóng truy vấn
tạm không cần SAVE.
- Tạo truy vấn chính để tìm tuyến đường thu được nhiều tiền nhất : Chọn Query 2phu và bảng
tuyenduong  đưa vào lưới truy vấn các field MATUYEN; TENTUYEN; TONGTIEN  tại phần
criteria của tongtien dán câu lệnh đã copy vào trong cặp dấu ngoặc đơn.
c. Đưa bảng DMXE vào tham gia truy vấn Đưa các field MAXE; TENXE; TENLAIXE; SOCHO vào
lưới QBE. Trong phần Criteria của MAXE nhập câu lệnh sau : NOT IN (SELECT
NHATTRINH.MAXE FROM NHATTRINH)  SAVE QUERY
d. Đưa bảng DMXE vào tham gia truy vấn  chọn loại truy vấn Append query  nhập “X005”;
“611080”; “LỢI”; 45 vào ô field Chọn MAXE; TENXE; TENLAIXE; SOCHO trong phần append to
 Click lệnh Run  SAVE query
Câu 3 : Tạo form TONGHOP
a. Click create form by using wizard  lần lượt chọn các field MATUYEN, TENTUYEN; SOKM;
GIAVE (bảng tuyenduong); MAXE (bảng query1); TENXE; TENLAIXE (bảng MAXE); SOVE
THANHTIEN (query1)  Click Next  click Next  click Next  Chọn kiểu Industrial  click next
 đặt tên form chính là THVTK; form phụ THVTK subforrm  click finish.
b. Về chế độ design view  sửa đổi thiết kế lại giống như trong bài
c. Right click text box MATUYEN  Change to  combo box  Right click text box MATUYEN 
Properties  data  xóa trống ô Control source  nhập câu lệnh SELECT
18
TUYENDUONG.MATUYEN FROM TUYENDUONG; (có dấu chấm phẩy cuối câu lệnh) nhập
“BD01” vào default value (xem hình minh họa trang sau) Click Event  chọn After Update  Code
builder  nhập đoạn code sau vào giữa Private sub và End sub

Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[MATUYEN] = '" & Me![MATUYEN] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
d. Tạo các nút lệnh bằng Wizard (không nên sử dụng code)
e. Chọn phần form footer của subform  tạo một textbox  rightclick chọn properties  chọn thẻ
OTHER  đặt tên TONGCON trong phần NAME  đóng hộp thoại properties  nhập công thức
=SUM([THANHTIEN]) vào textbox TONGCON  Vẽ textbox tổng tiền trên FORM chính nhập công
thức = [THVTK subform].Form!TONGCON
Câu 4 : Tạo báo cáo THEO DÕI NHẬT TRÌNH
a. Click create REPORT by using wizard  lần lượt chọn các field SONT, NGAY; MAXE (bảng
nhattrinh); TENLAIXE (bảng dmxe); MATUYEN(bảng QUERY1); TENTUYEN, SOKM
(tuyenduong); SOVE, THANHTIEN(QUERY1)  Click Next  click Next  click Next  Click
chọn Summary option  đánh dấu kiểm vào phần Sum - thanhtien  click OK  CLick Next  Chọn
kiểu Align Left 2  CLick Next  Chọn hình thức Bold  đặt tên cho report
THEODOINHATTRINH  Click Finish
b. Trở về cửa sổ design trình bày report như hình sau

Câu 5 : Tạo menu (Xem lại hướng dẫn trong Hướng dẫn giải đề số 2)

19
TRƯỜNG CAO ĐẲNG KINH TẾ KỸ THUẬT BÌNH DƯƠNG
ĐỀ ÔN THI SỐ 5
Thời gian làm bài : 120 phút

Câu 1 : Thiết kế bảng - Tạo mối quan hệ - Nhập dữ liệu vào bảng theo các yêu cầu sau
- Nxkho : SOHD(T,4); NGAY(D,Short date); LOAIHD(T,1);.
- Dmkho : MAKHO(T,3); TENKHO(T,20); DIACHI(T,30).
- Dmhh : MAHH(T,4); TENHH(T;25); DONGIA(N,Single)
- CTNX : SOHD(T,4);MAHH(T;4);MAKHO(T;3); SOLUONG(N;Integer)

Câu 2 : Tạo Query thực hiện những yêu cầu sau


1. Tính thành tiền cho các hàng hóa đã xuất bán, gồm các thông tin sau : SOHD; MAHH; MAKHO;
SOLUONG; THANHTIEN với thanhtien tính theo công thức : THANHTIEN=SOLUONG * DONGIA
với điều kiện nếu SOLUONG>=300 được giảm 10% .
2. Thông tin danh sách những mặt hàng đã đăng ký nhưng chưa nhập/xuất : MAHH; TENHH, DONGIA
3. Tìm danh sách kho đã nhập nhiều tiền hàng nhất : MAKHO; TENKHO; DIACHI; TSTIEN
4. Tạo truy vấn tổng hợp thể hiện thông tin như sau :

Câu 3 : Tạo Form THEODOIHANGHOA như hình trang sau, yêu cầu :
20
1. Thiết kế form đúng yêu cầu.
2. MAHANG, MAKHO dạng combo box; TENHANG; DONGIA, TENKHO, DIACHI, SOLUONG,
THANHTIEN tự động hiển thị.
3. Tạo công thức tính tổng tiền- Yêu cầu : tổng tiền tự động cập nhật khi dữ liệu trong forrm con thay đổi
4. Các nút lệnh thực hiện đúng chức năng, nút xóa có cảnh báo tiếng Việt.

Câu 4 : Tạo báo cáo HOADON như hình sau :

Câu 5 : Tạo form dieukhien như hình sau , yêu cầu khi chọn đối tượng và nhấn nút thực hiện sẽ kích hoạt
đối tượng tương ứng.

21
22
HƯỚNG DẪN GIẢI ĐỀ ÔN THI SỐ 05
Câu 1 :
a. Thiết kế bảng dữ liệu :
- Bảng NXKHO : Với SOHD chọn Require = YES; Index = Yes, no duplicate. (đặt khóa SOHD)
- Bảng DMKHO : Với MAKHO chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MAKHO)
- Bảng DMHH : Với MAHH chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MAHH)
- Bảng CTNX : Với SOHD; MAHH; MAKHO chọn Require = YES; Index = Yes, duplicates OK (đặt
khóa SOHD; MAHH; MAKHO)
b. Tạo mối quan hệ : Tạo mối quan hệ như hình sau

- Right click trên bảng CTNX chọn Table design  chọn SOHD  Click thẻ Lookup  Click phần
display Control  chọn Combo box  trong phần Row Source click chọn bảng NXKHO  Chọn
MAHH  Click thẻ Lookup  Click phần display Control  chọn Combo box  trong phần Row
Source click chọn bảng DMHH  click chọn MAKHO  Click thẻ Lookup  Click phần display
Control  chọn Combo box  trong phần Row Source click chọn bảng DMKHO  Click nút Save
 Close thiết kế bảng  đóng cửa sổ tạo mối quan hệ.
c. Nhập dữ liệu : Nhập bảng NXKHO DMKHO  DMHH CTNX.
Câu 2 : Thực hiện các query
a. Chọn các bảng tham gia truy vấn CTNX; DMHH  đưa các field SOHD, MAHH, MAKHO,
SOLUONG; THANHTIEN : [SOLUONG]*[DONGIA]*IIf([SOLUONG]>=300;0,9;1) vao lưới
QBE  SAVE QUERY với tên QUERY1
b. Đưa bảng DMHH vào tham gia truy vấn Đưa các field MAHH; TENHH; DONGIA vào lưới QBE.
Trong phần Criteria của MAHH nhập câu lệnh sau : NOT IN (SELECT CTNX.MAHH FROM CTNX)
c. Đầu tiên tạo một truy vấn phụ (Query 3phu) tính tổng số tiền hàng của từng kho : đưa bảng QUERY1
vào tham gia truy vấn  Chọn field MAKHO (group by), TONGTIEN: THANHTIEN (sum).
- Tạo một truy vấn tạm tìm Số tiền hàng nhiều nhất : đưa bảng Query 3phu vào tham gia truy vấn 
chọn field tongtien (MAX)  chọn chế độ SQL VIEW copy câu lệnh SQL (bỏ dấu ;)  đóng truy vấn
tạm không cần SAVE.
- Tạo truy vấn chính để tìm kho nhập nhiều tiền hàng nhất : Chọn Query 3phu và bảng DMKHO 
đưa vào lưới truy vấn các field MAKHO; TENKHO; DIACHI; TONGTIEN  tại phần criteria của
TONGTIEN dán câu lệnh đã copy vào trong cặp dấu ngoặc đơn.
d. Đưa bảng CTNX; DMHH; DMKHO vào tham gia truy vấn  Chọn loại truy vấn là Crosstab query 
Chọn field đưa vào lưới QBE : MAHH; TENHH (group by – Row heading), TENKHO (groupby –
column heading); SOLUONG (sum - value).
Câu 3 : Tạo form THEODOI
a. Click create form by using wizard  lần lượt chọn các field MAHH, TENHANG; DONGIA (bảng
DMHH); SOHD; MAKHO (bảng QUERY1); TENKHO; DIACHI (bảng DMKHO); SOLUONG
THANHTIEN (bảng QUERY1)  Click Next  click Next  click Next  Chọn kiểu Industrial 
click next  đặt tên form chính là THEODOIHANGHOA, form phụ là TDHH subform click finish.
b. Về chế độ design view  sửa đổi thiết kế lại giống như trong bài

23
c. Right click text box MAHH  Change to  combo box  Right click text box MAHH  Properties
 data  xóa trống ô Control source  click chọn Row source nhập câu lệnh SELECT
DMHH.MAHH FROM DMHH; (có dấu chấm phẩy cuối câu lệnh) nhập “A001” vào default value
(xem hình minh họa trang sau) Click Event  chọn After Update  Code builder  nhập đoạn code
sau vào giữa Private sub và End sub

Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[MAHH] = '" & Me![MAHH] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
d. Tạo các nút lệnh bằng Wizard (không nên sử dụng code), riêng nút xóa tạo bằng Macro giống như đã
hướng dẫn trong Bài đề ôn thi số 01
e. Chọn phần form footer của subform  tạo một textbox  rightclick chọn properties  chọn thẻ
OTHER  đặt tên TONGCON trong phần NAME  đóng hộp thoại properties  nhập công thức
=SUM([THANHTIEN]) vào textbox TONGCON  Vẽ textbox tổng tiền trên FORM chính nhập công
thức = [TDHH subform].Form!TONGCON
Câu 4 : Tạo báo cáo HOADON
a. Click create REPORT by using wizard  lần lượt chọn các field SOHD, NGAY; LOAIHD (bảng
NXKHO); MAHH (bảng QUERY1); TENKHO(bảng DMKHO); TENHH(bảng DMHH), SOLUONG
(bảng QUERY1); DONGIA (bảng DMHH), THANHTIEN(bảng QUERY1)  Click Next  click
Next  click Next  Click chọn Summary option  đánh dấu kiểm vào phần SUM - THANHTIEN
 click OK  CLick Next  Chọn kiểu Align Left 2  CLick Next  Chọn hình thức Bold  đặt
tên cho report HOADON  Click Finish
b. Trở về cửa sổ design trình bày report như hình sau, trong đó phần Textbox LOAIHD nhập công thức
sau :
=IIf(DLookUp("LOAIHD";"NXKHO";"SOHD=REPORT.SOHD")="N";"NHẬP";"XUẤT")

Câu 5 : Tạo Form DIEUKHIEN


24
- Click Create form in Design View  tạo Label
CHƯƠNG TRÌNH  Click chọn Option Group trong
hộp công cụ  vẽ Option Group trên màn hình  Trong
cửa sổ Wizard lần lượt nhập 3 hàng : Mở Form theo
dõi; Mở Báo cáo hóa đơn; Thoát  Click Next 
Click chọn I don’t want a default  click Next  click
Next  Click chọn CHECK BOX  Click Finish.
- Xóa label Frame1  Right click trên đường khung của Option Group  chọn Properties  click Other
đặt tên DIEUKHIEN trong ô Name
- Tạo nút lệnh thực hiện (không dùng Wizard)  Right Click nút lệnh  chọn Properties  Events 
On Click  Macro Builder  đặt tên Macro là DIEUKHIEN .
- Click View  Conditions  nhập Macro như các hình sau

- Click save  close macro  trở về cửa sổ form.


- Chuyển qua chế độ View ta có được bảng điều khiển như hình sau

25
26
TRƯỜNG CAO ĐẲNG KINH TẾ KỸ THUẬT BÌNH DƯƠNG
------------------------------
ĐỀ ÔN THI HẾT MÔN MS ACCESS – ĐỀ SỐ 6
THỜI GIAN : 120 PHÚT
1. Tạo các bảng , thiết lập mối quan hệ và nhập dữ liệu vào bảng theo yêu cầu sau
a. Bảng Nhaxuatban: MANXB(T,4); TENNXB(T,40)
b. Bảng Tacpham :MATP(T,4); TENTP(T,40); MANXB(T;4); TACGIA(T; 50); TSLUONG(N;Integer);
NGAYNHAP(D;Short date)
c. Bảng The : MATHE(T,4); TENBANDOC(T;40); DIACHI(T;50); SODT(T;10)
d. Bảng Chitietthe : MATHE(T,4); MATP(T,4); NGAYMUON(D;Short date); NGAYTRA(D;Short date)

2. Tạo các truy vấn theo yêu cầu sau :


a. Tạo truy vấn thể hiện thông tin sau : MATHE; TENBANDOC;MATP;TENTP;NGAYMUON;
NGAYTRA
b. Tìm bạn đọc mượn sách nhưng chưa trả :MATHE, TENBANDOC, TENTP, NGAYMUON
c. Tìm bạn đọc nào mượn nhiều sách nhất : MATHE, TENBANDOC, TSOSACH
d. Tạo truy vấn thể hiện thông tin số sách mượn mỗi ngày như sau

3. Tạo biểu mẫu THONGTINBANDOC như sau : (3 điểm)


Yêu cầu :
- Các nút lệnh thực hiện đúng chức năng
- MATHE, MATP dạng combo box; TENBANDOC; DIACHI, SODT, TENTP,
TENNXB tự động hiển thị;
27
- Các nút lệnh hoạt động đúng chức năng, nút xóa có cảnh báo tiếng Việt.
- Số sách mượn, số sách trả tự động cập nhật khi dữ liệu thay đổi trên form con.

4. Tạo báo cáo như sau : (2 điểm)

5. Tạo Menu như sau : (1 điểm)

Trong đó nội dung từng Menu lệnh như sau


Mở bảng Mở Query form – report Kết thúc

28
HƯỚNG DẪN GIẢI ĐỀ ÔN THI SỐ 06
Câu 1 :
a. Thiết kế bảng dữ liệu :
- Bảng Nhaxuatban : Với MANXB chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MANXB)
- Bảng The : Với MATHE chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MATHE)
- Bảng Tacpham : Với MATP chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MATP)
- Bảng Chitietthe : Với MATHE, MATP chọn Require = YES; Index = Yes, duplicated OK. (đặt khóa
MATHE, MATP)
b. Tạo mối quan hệ : Tạo mối quan hệ như hình sau

- Right click trên bảng TACPHAM chọn Table design  chọn MANXB  Click thẻ Lookup  Click
phần display Control  chọn Combo box  trong phần Row Source click chọn bảng NHAXUATBAN 
Save & Close thiết kế bảng 
- Right click trên bảng CHITIETTHE chọn Table design  chọn MATHE  Click thẻ Lookup  Click
phần display Control  chọn Combo box  trong phần Row Source click chọn bảng THE  chọn
MATP Click thẻ Lookup  Click phần display Control  chọn Combo box  trong phần Row Source
click chọn bảng TACPHAM  Save & Close thiết kế bảng  Save & Close cửa sổ tạo mối quan hệ.
c. Nhập dữ liệu : Nhập bảng THE, NHAXUATBAN  TACPHAM CHITIETTHE
Câu 2 : Thực hiện các query
a. Chọn các bảng tham gia truy vấn : THE, TACPHAM, CHITIETTHE  chọn đưa các field MATHE,
TENBANDOC, MATP, TENTP, NGAYMUON, NGAYTRA vào lưới QBE  Save truy vấn với tên
Query1.
b. Chọn các bảng tham gia truy vấn : CHITIETTHE, THE, TACPHAM  Đưa các field MATHE,
TENBANDOC, TENTP, NGAYMUON, NGAYTRA vào lưới QBE  tại field NGAYTRA bỏ dấu
kiểm ở phần SHOW  phàn Criteria nhập điều kiện IS NULL  Save và đặt tên Query2
c. Đầu tiên tạo một truy vấn tạm tìm tổng số sách của mỗi thẻ mượn : đưa bảng CHITIETTHE vào tham
gia truy vấn  Chọn field MATHE (group by); TSSACH : MATP(count)  Save truy vấn với tên
Query3 phu.
- Tạo truy vấn tạm tìm số lớn nhất trong số sách mượn : đưa bảng Query3 phu vào tham gia truy vấn
 chọn field TSSACH (max) Click view  SQL VIEW copy câu lệnh SQL (không copy dấu ;) 
đóng truy vấn tạm không cần SAVE.
- Tạo truy vấn chính để tìm thẻ có TSSACH = số lớn nhất : Chọn bảng QUERY3 PHU, THE  đưa
vào lưới truy vấn các field MATHE; TENBANDOC; TSSACH  tại phần criteria của TSSACH dán
câu lệnh đã copy vào trong cặp dấu ngoặc đơn  Save với tên Query3
d. Đưa bảng THE, CHITIETTHE vào tham gia truy vấn  chọn loại truy vấn Crosstab query 
MATHE(Groupby–Row heading), TENBANDOC(Groupby–Row heading), NGAYMUON(Groupby –
Column heading), MATP(Count – Value)  click Run  chọn yes  lưu truy vấn với tên QUERY4
Câu 3 : Tạo form THONGTINBANDOC
a. Click create form by using wizard  lần lượt chọn các field MATHE, TENBANDOC; DIACHI, SODT
(bảng the); MATP(chitietthe); TENTP, TACGIA(tacpham); TENNXB(nhaxuatban); NGAYMUON,
NGAYTRA (chitietthe)  Click Next  click Next  click Next  Chọn kiểu Industrial  click next
 đặt tên form chính là TTBD; tên form phụ TTBD Subform  click finish.
b. Về chế độ design view  sửa đổi thiết kế lại giống như trong bài
c. Tạo nút lệnh bằng Wizard, riêng nút xóa không tạo bằng Wizard mà vẽ nút lệnh  r.click  chọn
properties  Chọn Event Chọn On Click  chọn Macro Builder  đặt tên cho Macro là canhbao 
Click View  Conditions  nhập và trình bày Macro như hình vẽ sau  Click save  trở về cửa sổ
tạo form.
29
d. Right Click Textbox MATHE  chọn change to  chọn combo box  Right Click Textbox
MATHE chọn properties  chọn data  trong phần Control source xóa trống, phần Row source
nhập câu lệnh SELECT [THE].[MATHE] from [THE]; (có dấu ; cuối câu-xem hình trên), phần
default value nhập “BETX”  chọn thẻ Event  chọn After Update  Code builder  nhập đoạn
code sau vào giữa Private sub và End sub :
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[MATHE] = '" & Me![MATHE] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
e. Chọn phần form footer của subform  tạo textbox  rightclick chọn properties  chọn thẻ OTHER
 đặt tên TONGMUON trong phần NAME  đóng hộp thoại properties  nhập công thức
=COUNT([NGAYMUON])  tạo textbox  rightclick chọn properties  chọn thẻ OTHER  đặt tên
TONGTRA trong phần NAME  đóng hộp thoại properties  nhập công thức
=COUNT([NGAYTRA])  Vẽ textbox Số sách mượn trên FORM chính nhập công thức = [TTBD
subform].Form!TONGMUON  Vẽ textbox Số sách chưa trả trên FORM chính nhập công thức =
[TTBD subform].Form!TONGTRA  Save form
Câu 4 : Tạo báo cáo TBBD
a. Click create REPORT by using wizard  lần lượt chọn các field MATHE, TENBANDOC, DIACHI,
SODT trong bảng THE; MATP (chitietthe); TENTP(tacpham); NGAYMUON; NGAYTRA (chitietthe)
 Click Next  click Next  click Next  CLick Next  Chọn kiểu Align Left 2  CLick Next 
Chọn hình thức Bold  đặt tên cho report THONGBAOBANDOC  Click Finish
b. Trở về cửa sổ design trình bày report như hình sau

Công thức cho tổng số sách đã mượn : =DCount("matp";"chitietthe";"mathe=report.mathe")


Công thức cho tổng số sách chưa trả :
=DCount("matp";"chitietthe";"mathe=report.mathe and ngaytra is null")
Câu 5 : Tạo MENU điều khiển

30
Xem lại hướng dẫn tạo Menu trong bài hướng dẫn đề ôn số 2

31
------------------------------
ĐỀ ÔN THI SỐ 7
THỜI GIAN : 120 PHÚT
1. Tạo các bảng dữ liệu, thiết lập mối quan hệ, nhập dữ liệu theo yêu cầu sau
a. Bảng DMMONHOC : MAMON(T,2); TENMON(T,25); SOTIET(N; byte)
b. Bảng DMGIAOVIEN :MAGV(T,4); TENGV(T,30); DIACHI(T;50); DIENTHOAI(T;10)
c. Bảng DMLOPHOC : MALOP(T,4); TENLOP(T;50)
d. Bảng TIENDO : MALOP(T,4); MAMON(T,2); MAGV(T,4); PHONGHOC(T;20);

2. Tạo các truy vấn theo yêu cầu sau :


a. Tìm giáo viên nào dạy nhiều lớp nhất : MAGV; TENGV; TONGSOLOP
b. Thêm dữ liệu “TW”; “Thiết kế WEB”; 60 vào DMMONHOC
c. Tìm môn học chưa được tổ chức dạy : MAMON; TENMON; SOTIET
d. Trình bày thông tin tổng hợp như sau :

3. Tạo biểu mẫu PCGDGV như trang sau :


Yêu cầu :
- Thiết kế đúng hình thức
- MAGV, MAMON dạng combo box; TENGV; DIACHI; DIENTHOAI, TENMON tự
động hiển thị khi MAGV, MAMON thay đổi .
- Các nút lệnh thực hiện đúng chức năng, Khi nhấn nút xóa xuất hiện thông báo và chọn
lựa OK – CANCEL.

- TS lớp dạy tự động cập nhật khi dữ liệu trên form con thay đổi

32
4. Tạo bao cáo TBLH như sau : (2 điểm)

5. Tạo Form điều khiển như sau : (1 điểm)


- Danh sách môn học : Mở bảng
DMMONHOC.
- Danh sách giáo viên : Mở bảng
DMGIAOVIEN.
- Danh sách lớp học : Mở bảng
DMLOPHOC.
- Lịch Học tập : Mở bảng TIENDO.
- Phân công giảng dạy từng giáo
viên : Mở Form phân công giảng
dạy .
- Thông báo lịch học tập : Mở
report Thông báo lịch học tập
- Nút thực hiện : dùng để mở đối
tượng đã chọn
- Nút thoát : dùng để đóng form
điều khiển

33
HƯỚNG DẪN GIẢI ĐỀ ÔN THI SỐ 07
Câu 1 :
a. Thiết kế bảng dữ liệu :
- Bảng Dmlophoc : Với MALOP chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MALOP).
- Bảng Dmgiaovien : Với MAGV chọn Require = YES; Index = Yes, no duplicate. (đặt khóa MAGV).
- Bảng Dmmonhoc : Với MAMON chọn Require = YES; Index = Yes, no duplicate. (đặt khóa
MAMON).
- Bảng Tiendo : Với MALOP, MAMON, MAGV chọn Require = YES; Index = Yes, duplicated OK. (đặt
khóa MALOP, MAMON, MAGV).
b. Tạo mối quan hệ : Tạo mối quan hệ như hình sau

- Right click trên bảng TIENDO chọn Table design  chọn MALOP  Click thẻ Lookup  Click phần
display Control  chọn Combo box  trong phần Row Source click chọn bảng DMLOPHOC  chọn
MAMON Click thẻ Lookup  Click phần display Control  chọn Combo box  trong phần Row
Source click chọn bảng DMMONHOC  chọn MAGV  Click thẻ Lookup  Click phần display
Control  chọn Combo box  trong phần Row Source click chọn bảng DMGIAOVIEN Save & Close
thiết kế bảng  Save & Close cửa sổ tạo mối quan hệ.
c. Nhập dữ liệu : Nhập bảng DMLOPHOC  DMGIAOVIEN DMMONHOC  TIENDO.
Câu 2 : Thực hiện các query
a. Đầu tiên tạo một truy vấn phụ tìm tổng số lớp dạy của từng giáo viên : đưa bảng TIENDO vào tham
gia truy vấn  Chọn field MAGV (group by); TSLOP : MALOP (count)  Save truy vấn với tên
Query1 phu.
- Tạo truy vấn tạm tìm số lớn nhất trong số lớp dạy : đưa bảng Query1 phu vào tham gia truy vấn 
chọn field TSLOP(max) Click view  SQL VIEW copy câu lệnh SQL (không copy dấu ;)  đóng
truy vấn tạm không cần SAVE.
- Tạo truy vấn chính để tìm giáo viên có số lớp dạy = số lớn nhất : Chọn bảng QUERY1 PHU,
DMGIAOVIEN  đưa vào lưới truy vấn các field MAGV; TENGV; TSLOP  tại phần criteria của
TSLOP dán câu lệnh đã copy vào trong cặp dấu ngoặc đơn  Save với tên Query1
b. Tạo truy vấn không chọn bảng nào  chọn loại truy vấn append query  chọn bảng DMMONHOC 
trong phần field lần lượt nhập các giá trị : “TW”; “THIẾT KẾ WEB”; 60  trong phần append to lần
lượt chọn MAMON; TENMON; SOTIET  Click Run  Save & Close truy vấn đặt tên là Query2.
c. Chọn bảng tham gia truy vấn : DMMONHOC  Đưa các field MAMON, TENMON, SOTIET vào lưới
QBE  tại phần Criteria của MAMON nhập điều kiện NOT IN (SELECT TIENDO.MAMON
FROM TIENDO)  Save và đặt tên Query3
d. Đưa bảng DMGIAOVIEN, TIENDO vào tham gia truy vấn  chọn loại truy vấn Crosstab query 
trogn vùng lưới QBE chọn : MAGV(Groupby–Row heading), TENGV(Groupby–Row heading),
MALOP(Groupby – Column heading),
PHONGHOC(first – Value)  click run  chọn
yes  lưu truy vấn với tên QUERY4
Câu 3 : Tạo form PCGDGV
a. Đầu tiên dùng Wizard tạo ra một form
DMGIAOVIEN có hình dạng như hình bên –
Form này được dùng để đáp ứng yêu cầu khi click

34
nút thêm giáo viên trong form PCGDGV  trong đó nút thêm giáo viên dùng để thêm GV mới, nút ghi
lại để lưu dữ liệu, nút thoát dùng để đóng Form.
b. Click create form by using wizard  lần lượt chọn các field MAGV, TENGV; DIACHI, DIENTHOAI
(dmgiaovien); MALOP(tiendo); TENLOP(dmlophoc), PHONGHOC; MAMON(tiendo),
TENMON(dmmonhoc)  Click Next  click Next  click Next  Chọn kiểu Industrial  click next
 đặt tên form chính là PCGDGV; tên
form phụ PCGDGV Subform  click
finish.
c. Về chế độ design view  sửa đổi thiết kế lại
giống như trong bài
d. Tạo nút lệnh GHI LẠI, THOÁT bằng
Wizard tạo nút xóa bằng MACRO như
những bài trước Vẽ nút lệnh THÊM GV
(không dùng Wizard)  Right click 
Properties  chọn Event  chọn On click
 Macro builder  đặt tên cho Macro là
themgv  thực hiện macro như hình bên
e. Right Click Textbox MAGV  chọn change to  chọn combo box  Right Click Textbox MAGV
chọn properties  chọn data  trong phần Control source xóa trống, phần Row source nhập câu lệnh
SELECT [DMGIAOVIEN].[MAGV] from [DMGIAOVIEN];  phần default value nhập “GV01”
 chọn thẻ Event  chọn After Update  Code builder  nhập đoạn code sau vào giữa Private sub
và End sub :
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[MAGV] = '" & Me![MAGV] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
f. Chọn phần form footer của subform  tạo textbox  rightclick chọn properties  chọn thẻ OTHER
 đặt tên TONGCON trong phần NAME  đóng hộp thoại properties  nhập công thức
=COUNT([MALOP])  Vẽ textbox TS lớp dạy trên FORM chính nhập công thức =[PCGDGV
subform].Form!TONGCON  Save form
Câu 4 : Tạo báo cáo TBLH
a. Click create REPORT by using wizard  lần lượt chọn các field MALOP, TENLOP (dmlophoc),
MAMON (tiendo); TENMON,SOTIET(dmmonhoc), TENGV(dmgiaovien); PHONGHOC (tiendo) 
Click Next  click Next  click Next  click Summary options  Click chọn SOTIET – SUM 
OK  CLick Next  Chọn kiểu Align Left 2  CLick Next  Chọn hình thức Bold  đặt tên cho
report TBLH  Click Finish
b. Trở về cửa sổ design trình bày report như hình sau

Câu 5 : Tạo form điều khiển


Xem lại hướng dẫn tạo Menu trogn bài hướng dẫn đề ôn số 5
35
36
------------------------------
ĐỀ ÔN THI SỐ 8
THỜI GIAN : 120 PHÚT
1. Tạo các bảng dữ liệu, thiết lập mối quan hệ , nhập dữ liệu vào các bảng theo yêu cầu sau
a. Bảng LOP : MALOP(T,6); TENLOP(T,35); SOLUONG(N,BYTE).
b. Bảng DINHMUC : MAHV(T,3); HOCVI(T,15); DINHMUC(N,long int – Standard).
c. Bảng MONDAY : MAMON(T,4); TENMON(T,30); LYTHUYET(N,byte); THUCHANH(N,byte).
d. Bảng GIAOVIEN : MAGV(T,4); HOTEN(T,30); CHUYENMON(T,20); MAHV(T,3); SDT(T,10).
e. Bảng PCGD : MAGV(T,4); MALOP(T,6); MAMON(T,4); PHONGHOC(T,3)
2. Nhập dữ liệu cho các bảng : (1,0 diểm)

37
3. Tạo các truy vấn theo yêu cầu sau :
a. Tính tiền dạy cho giảng viên gồm các thông tin : MAGV, MALOP, MAMON, LYTHUYET,
THUCHANH, TIENDAY với lưu ý sau : TIENDAY = (LYTHUYET + THUCHANH*80/100)
*DINHMUC và nếu lớp có trên 60 sinh viên thì định mức được tính thêm 25%
b. Tạo ra một bảng mới có tên DSGVHD có cấu trúc giống như bảng GIAOVIEN biết rằng Giảng
viên hợp đồng là giảng viên có MAGV bắt đầu bằng chữ H
c. Tìm xem giảng viên nào chưa được phân công giảng dạy.
d. Tìm xem giảng viên nào dạy nhiều tiết nhất trong quá trình phân công giảng dạy (bao gồm cả
tiết lý thuyết và thực hành).
4. Tạo Report có tên QUYETTOAN như sau :

5. Tạo FORM PHIEUTHANHTOAN như sau :

Yêu cầu : - Thiết kế form đúng về hình thức :


- MAGV,MALOP, MAMON dạng combo box; hoten, chuyenmon, hocvi, Sdt, SOLUONG,
TENMON, LYTHUYET, THUCHANH, TIENDAY tự động hiển thị (0,5điểm)
- Nút thoát dùng để đóng Form, nút xóa có cảnh báo tiếng việt, (0,5 điểm)

38
- Tổng số tiền nhận tự động cập nhật khi dữ liệu trong form con thay đổi.
- khi click nút in phiếu sẽ in ra phiếu thanh toán cho giảng viên có tên trong form theo dạng
sau : (1điểm)

6. Tạo MENU điều khiển như sau : (1điểm)

39
HƯỚNG DẪN GIẢI ĐỀ ÔN THI SỐ 02
Câu 1 :
a. Thiết kế bảng dữ liệu : học viên tự thiết kế
b. Tạo mối quan hệ : Tạo mối quan hệ như hình sau

Chuyển đổi các field MAHV(giaovien); MAGV, MALOP, MAMON(pcgd) thành chế độ Combo box (xem
lại cách chuyển đổi trong các bài ôn tập trước)
c. Nhập dữ liệu : Nhập bảng DINHMUC, LOP, MONDAY  GIAOVIEN  PCGD.
Câu 2 : Thực hiện các query
a. Chọn toàn bộ các bảng tham gia truy vấn  chọn đưa các field MAGV, MALOP, MAMON(pcgd);
LYTHUYET, THUCHANH (Monday) vào lưới QBE  tạo field mới TIENDAY như sau :
([lythuyet]+[thuchanh]*80/100)*[dinhmuc]*IIf([soluong]>60;1,25;1)  Click nút lệnh RUn để thực
hiện  Save truy vấn với tên Query1.
b. Học viên tự giải quyết
c. Học viên tự giải quyết
d. Đầu tiên tạo một truy vấn tạm tìm tổng số tiết dạy của mỗi giáo viên : đưa bảng PCGD, MONDAY
vào tham gia truy vấn  Chọn field MAGV (goupby), TSTIET : [LYTHUYET]+[THUCHANH] (sum)
 Close & Save với tên query4 phu
- Tạo truy vấn tạm để tìm số giờ dạy lớn nhất : đưa Query4 phu vào tham gia truy vấn  đưa TSTIET
(max) vào lưới QBE  SQL view  copy câu lệnh  đóng truy vấn không save
- Tạo truy vấn chính để tìm Giảng viên có ngày số tiết dạy nhiều nhất : Chọn bảng QUERY4 PHU,
GIAOVIEN  đưa vào lưới truy vấn các field MAGV; HOTEN; CHUYENMON, MAHV; TSTIET;
 tại phần criteria của TSTIET dán câu lệnh đã copy vào trong cặp dấu ngoặc đơn  Save với tên
Query4
Câu 3: Tạo báo cáo QUYETTOAN
a. Click create REPORT by using wizard  lần lượt chọn các field MALOP, TENLOP, SOLUONG (lop);
MAMON(query1); TENMON, LYTHUYET, THUCHANH(monhoc); HOTEN(giaovien),
TIENDAY(Query1)  Click Next  click Next  click Next  Click chọn Summary option  đánh
dấu kiểm vào phần SUM – TIENDAY, LYTHUYET, THUCHANH  click OK  CLick Next 
Chọn kiểu Align Left 2  CLick Next  Chọn hình thức Bold  đặt tên cho report QUYETOAN 
Click Finish
b. Trở về cửa sổ design trình bày report như hình sau

40
Câu 4 : Tạo form PHIEUTHANHTOAN
e. Đầu tiên tạo một report có tên PHIEUTHANHTOAN dùng để làm nguồn cho nút lệnh INPHIEU
- Click create REPORT by using wizard  lần lượt chọn các field MAGV, HOTEN, CHUYENMON,
MAHV, SODT(giaovien); MALOP(query1);SOLUONG(lop), TENMON(Monday), LYTHUYET,
THUCHANH, TIENDAY(Query1)  Click Next  click Next  click Next  Click chọn Summary
option  đánh dấu kiểm vào phần SUM – TIENDAY, LYTHUYET, THUCHANH  click OK 
CLick Next  Chọn kiểu Align Left 2  CLick Next  Chọn hình thức Bold  đặt tên cho report
PHIEUTHANHTOAN  Click Finish
- Trở về cửa sổ design trình bày report như hình sau

Right click vào đây 


chọn Properties

- R.Click create ô vuông góc trái trên đầu form( xem hình trên)  properties  Data  row source click
vào nút ... để xuát hiện truy vấn như hình sau

41
- Trong phần criteria của MAGV nhập câu lệnh sau : [Forms]![PHIEUTHANHTOAN]![MAGV] 
chuyển qua chế độ SQL copy toàn bộ câu lệnh trong cửa sổ SQL, đóng truy vấn & không cần save.
- Dán câu lệnh đã copy vào dòng rource. Save và close report.
f. Click create form by using wizard  lần lượt chọn các field MAGV, HOTEN, CHUYENMON,
MAHV, SODT(giaovien); MALOP(query1);SOLUONG(lop), TENMON(Monday), LYTHUYET,
THUCHANH, TIENDAY(Query1)  Click Next  click Next  click Next  Chọn kiểu Industrial
 click next  đặt tên form chính là PHIEUTHANHTOAN, form phụ LÀ PHIEUTHANHTOAN
SUBFORM  click finish.
g. Về chế độ design view  sửa đổi thiết kế lại giống như trong bài
h. Tạo các nút lệnh bằng GHI, XÓA, THOÁT  Tạo nút lệnh in phiếu không dùng wizard  r.click 
chọn properties  Chọn Event Chọn On Click  chọn Macro Builder  đặt tên cho Macro là
inphieu  nhập và trình bày Macro như hình vẽ sau  Click save  trở về cửa sổ tạo form.

i. Các phần khác của form thực hiện như các bài đã học trước.
Câu 5 : Tạo menu điều khiển (Xem lại hướng dẫn trong các bài ôn thi trước).

42
------------------------------
ĐỀ ÔN THI SỐ 9
THỜI GIAN : 120 PHÚT
1. Tạo các bảng dữ liệu, thiết lập mối quan hệ , nhập dữ liệu vào các bảng theo yêu cầu sau
a. Bảng LOAISACH: MALOAI(T,4); LOAISACH(T,20)
b. Bảng DMSACH : MASACH(T,6); TENSACH(T,30); DONGIA(N,Single)
c. Bảng HOADON : SOCTU(T,3); LOAICT(T,1); NGAYCTU(D,Shortdate);HOTEN(t,30); DIACHI(T;15).
d. Bảng CTHOADDON : SOCT(T,3); MASACH(T,6); MALOAI(T,4);SOLUONG(N,integer)

2. Thực hiện các truy vấn sau


a. Tạo truy vấn thể hiện thông tin sau : SOCTU, MASACH, MALOAI, SOLUONG, GIATIEN,
THANHTIEN biết rằng : Nếu chứng từ nhập thì Giá tiền bằng đơn giá trong bảng DMSACH; nếu
chứng từ xuất thì giá tiền bằng 120% đơn giá trong DMSACH, THANHTIEN = SOLUONG*
DONGIA.
b. Tìm xem hóa đơn nào có tổng số lượng sách nhiều nhất. Bao gồm các thông tin :SOCTU; LOAICTU;
HOTEN; NGAYCTU,TONGSL.
c. Tìm xem hóa đơn nào chưa có số liệu sách nhập/xuất. Bao gồm các thông tin :SOCTU; LOAICTU;
HOTEN; NGAYCTU,DIACHI.
d. Thêm vào bảng DMSACH thông tin sau : “ACC002”; “LẬP TRÌNH ACCESS NÂNG CAO”; 40000
3. Tạo form HOADON như hình sau :
Yêu cầu :
a. Nếu là chứng từ nhập thì tiêu đề là HÓA ĐƠN NHẬP SÁCH, ngược lại thì tiêu đề là HÓA ĐƠN
XUẤT SÁCH.
b. Số chứng từ không được trùng lặp, không được rổng, MASACH, MALOAI dangj combo box,
TENSACH, DONGIA, THANHTIEN tự động hiển thị
c. Tổng số tiền tự động cập nhật khi dữ liệu trên form con thay đổi
d. Các nút lệnh thực hiện đúng chức năng
e. Khi nhấn nút Xóa, Kết thúc xuất hiện thông báo nhắc bằng tiếng Việt

43
4. Tạo mẫu in HOADONSACH như hình sau :
Yêu cầu :
- Hình thức đúng
- Nếu là chứng từ nhập thì tiêu đề là HÓA ĐƠN NHẬP SÁCH, ngược lại thì tiêu đề là HÓA ĐƠN
XUẤT SÁCH.

5. Tạo bảng DKHIEN như hình bên :


Yêu cầu :
- Khi click nút thực hiện hoạt động đúng
chức năng.
- Click nút VỀ CSDL về lại CSDL
access; Click nút Về WINDOWS thì
đòng chương trình Access và trở về
Windows.

44
ĐỀ ÔN THI SỐ 10
THỜI GIAN : 120 PHÚT
1. Tạo các bảng dữ liệu & thiết lập mối quan hệ giữa các bảng theo yêu cầu sau : (1,5 diểm)
a. Bảng DSLOP : MALOP(T,6); TENLOP(T,35); MAHE(T,2).
b. Bảng HEDT : MAHE(T,2); TENHE(T,25); HPCB(N,Single – Standard).
c. Bảng DSSV : MASV(T,4); HOTEN(T,30); NGAYSINH(D,Short date); MALOP(T,6);DIENUT(Yes/no)
d. Bảng THUHP : MASV(T,4); MAHP(T,3); NGAYQD(D); NGAYTHU(D); SOTIEN(N,Single - standard).
e. Bảng HOCPHI : MAHP(T,3); KYHP(T,15)
2. Nhập dữ liệu cho các bảng :

45
3. Tạo các truy vấn theo yêu cầu sau :
a. Thể hiện thông tin MASV, MAHP, NGAYQD,NGAYTHU, SOTIEN biết rằng SOTIEN =
HPCB; nếu sinh viên thuộc diện ưu tiên được giảm 10% HPCB, nếu đóng trễ so với ngày quy
định thì bị phạt thêm 5% HPCB.
b. Tạo ra một bảng mới có tên DSSVCD có cấu trúc giống như bảng DSSV bao gồm các sinh viên
thuộc hệ cao đẳng
c. Tìm xem sinh viên nào chưa đóng học phí kỳ học nào.
d. Tìm xem hệ đào tạo nào có nhiều sinh viên nhất .
4. Tạo Report có tên THHPTHEOLOP như sau :

5. Tạo FORM PHIEUHOCPHI như sau :

Yêu cầu : - Thiết kế form đúng về hình thức :


- MASV không được rỗng, không được trùng lặp
- MALOP, MAHP dạng combo box; TENLOP, DIENUT; SOTIEN tự động thể hiện
- Tổng số tiền HP tự động hiển thị khi dữ liệu trên form con thay đổi
- Nút thoát dùng để đóng Form, nút xóa có cảnh báo tiếng việt.
- khi click nút in phiếu sẽ in ra phiếu thu học phí cho sinh viên có tên trong form theo dạng
sau :

46
6. Tạo bảng điều khiển như sau :

Khi chọn đối tượng trên bảng và nhấn nút thực hiện sẽ xuất hiện đối tượng tương ứng đã chọn

47

You might also like