BÀI TẬP TRẮC NGHIỆM VỀ BIỂU MẪU TIN HỌC 12Câu 1: Để tạo biểu mẫu ta chọn đối tượng nào trên bảng chọn đối tượng?A. QueriesB. FormsC. TablesD. ReportsCâu 2: Trong Access, ta có thể sử dụng biểu mẫu để :A. Tính toán cho các trường tính toánB. Sửa cấu trúc bảngC. Xem, nhập và sửa dữ liệuD. Lập báo cáoCâu 3: Để tạo biểu mẫu, trước đó phải có dữ liệu nguồn là từ:A. Bảng hoặc mẫu hỏiB. Bảng hoặc báo cáoC. Mẫu hỏi hoặc báo cáoD. Mẫu hỏi hoặc biểu mẫuCâu 4: Trong Access, muốn tạo biểu mẫu theo cách dùng thuật sĩ, ta chọn:A. Create form for using WizardB. Create form by using WizardC. Create form with using WizardD. Create form in using WizardCâu 5: Trong Access, muốn tạo biểu mẫu theo cách tự thiết kế, ta chọn:A. Create form in Design ViewB. Create form by using WizardC. Create form with using WizardD. Create form by Design ViewCâu 6: Cho các thao tác:(1) Gõ tên cho biểu mẫu rồi nháy Finish(2) Chọn đối tượng Form trong bảng chọn đối tượng rồi nháy đúp vào Createform by using wizard(3) Chọn kiểu cho biểu mẫu rồi nhấn Next(4) Chọn cách bố trí biểu mẫu rồi nhấn Next(5) Trong hộp thoại Form Wizard, chọn bảng (hoặc mẫu hỏi) từ ôTables/Queries, tiếp theo là chọn các trường đưa vào biểu mẫu rồi nhấn NextTrình tự các thao tác để có thể thực hiện tạo biểu mẫu bằng cách dùng thuật sĩ sẽ là:A (2) (5) (3) (4) (1)B. A (2) (5) (4) (3) (1)C. (5) (2) (3) (4) (1)D. A (2) (3) (4) (5) (1)Câu 7: Các thao tác thay đổi hình thức biểu mẫu, gồm:A. Thay đổi nội dung các tiêu đềB. Sử dụng phông chữ tiếng ViệtC. Di chuyển các trường, thay đổi kích thước trường D. Cả A, B và C đều đúngCâu 8: Chỉnh sửa biểu mẫu (thay đổi hình thức biểu mẫu) chỉ thực hiện được ởchế độ:A. Thiết kếB. Trang dữ liệuC. Biểu mẫuD. Thuật sĩCâu 9: Phát biểu nào trong các phát biểu sau là sai?A. Chế độ biểu mẫu có giao diện thân thiện, thường được sử dụng để cập nhật dữ liệuB. Bảng ở chế độ hiển thị trang dữ liệu có thể được sử dụng để cập nhật dữ liệuC. Để làm việc trên cấu trúc của biểu mẫu thì biểu mẫu phải ở chế độ thiết kếD. Có thể tạo biểu mẫu bằng cách nhập dữ liệu trực tiếp (nháy đúp vào Create form byentering data)Câu 10: Trong chế độ thiết kế của biểu mẫu, ta có thể:A. Sửa đổi cấu trúc của biểu mẫuB. Sửa đổi dữ liệuC. Nhập và sửa dữ liệuD. Xem, sửa, xóa và nhập dữ liệuCâu 11: Trong chế độ thiết kế của biểu mẫu, ta có thể:A. Sửa đổi thiết kế cũB. Thiết kế mới cho biểu mẫu, sửa đổi thiết kế cũC. Thiết kế mới cho biểu mẫu, xem hay sửa đổi thiết kế cũD. Thiết kế mới cho biểu mẫu, xem hay sửa đổi thiết kế cũ, xem, sửa, xóa và nhập dữliệuCâu 12: Các thao tác có thể thực hiện trong chế độ thiết kế, gồm:A. Thêm/bớt, thay đổi vị trí, kích thước các trường dữ liệuB. Định dạng phông chữ cho các trường dữ liệu và các tiêu đềC. Tạo những nút lệnh để đóng biểu mẫu, chuyển đến bản ghi đầu, bản ghi cuối…D. Cả A, B và C đều đúngCâu 13: Để làm việc trong chế độ thiết kế của biểu mẫu, ta thực hiện:A. Chọn biểu mẫu rồi nháy nútB. Chọn biểu mẫu rồi nháy núthoặc nháy nútC. Chọn biểu mẫu rồi nháy nútvà nháy nútnếu đang ở chế độ biểu mẫunếu đang ở chế độ thiết kếD. Chọn biểu mẫu rồi nháy núthoặc nháy nútnếu đang ở chế độ thiết kếCâu 14: Thao tác nào sau đây có thể thực hiện được trong chế độ biểu mẫu?A. Thêm một bản ghi mớiB. Định dạng font chữ cho các trường dữ liệuC. Tạo thêm các nút lệnhD. Thay đổi vị trí các trường dữ liệuCâu 15: Để làm việc trong chế độ biểu mẫu, ta không thực hiện thao tác nào sauđây?A. Nháy đúp chuột lên tên biểu mẫuB. Chọn biểu mẫu rồi nháy nútC. Nháy nút, nếu đang ở chế độ thiết kếD. Nháy nút, nếu đang ở chế độ thiết kếCâu 16: Để làm việc trong chế độ biểu mẫu, ta thực hiện:A. Nháy đúp lên tên biểu mẫuB. Chọn biểu mẫu rồi nháy nútC. Nháy nútnếu đang ở chế độ thiết kếD. Cả A, B và C đều đúngCâu 17: Phát biểu nào sau đây là sai?A. Việc cập nhật dữ liệu trong biểu mẫu thực chất là cập nhật dữ liệu trên bảng dữ liệunguồnB. Việc nhập dữ liệu bằng cách sử dụng biểu mẫu sẽ thuận tiện hơn, nhanh hơn, ít saisót hơnC. Có thể sử dụng bảng ở chế độ trang dữ liệu để cập nhật dữ liệu trực tiếpD. Khi tạo biểu mẫu để nhập dữ liệu thì bắt buộc phải xác định hành động cho biểumẫuĐÁP ÁN:1B2C3A4B5A6B7D8A9D10A11C12D13B14A15C16D17D
Nội dung chính
- Tạo Single Form
- Tạo Form dạng Datasheet
- Thực hành sử dụng Sub Form
- Liên kết Control trong Form
- Video liên quan
Form là thành phần giao diện (hộp thoại, cửa sổ) để cập nhật, chỉnh sửa, xem thông tin dữ liệu … Form thường được cung cấp các nguồn dữ liệu là các bảng (Table), các Query để hoạt động.
Để tạo Form, nhấn Create trên Ribbon. Có thể chọn:
- Form – để tạo Form với nguồn cấp từ bảng đang chọn
- Form Design – để tạo Form ở chế độ Design View. Dữ liệu tự động dàng buộc với Form nếu có chọn Table hay Query
- Form Wizard – hỗ trợ từng bước để tạo Form
- Blank Form – tạo Form trống, chưa có nguồn cấp dữ liệu nào
- Multiple Items – dạng Form hiện thị được nhiều Record một lúc
Tạo Single Form
Single Form hiện thị một record tại một thời điểm. Từ Navigation Panel bấm chọn Table/Query cần làm nguồn cấp dữ liệu cho Form. Sau đó chọn menu Create, chọn Form. Form mới tạo ra, hiện thị ở dạng Layout View.
Có thể chọn chế độ Design View 1 2, Ở chế độ này nhấn phải chuột vào khu vực Form chọn Form Properties xuất hiện Property Sheet 3 để chỉnh một số thiết lập cơ bản như:
Form chia làm ba phần, gồm
- Form header – phần đầu Form, thường trình bày các tiêu đề
- Detail – phần chính chứa nội dung
- Form footer – phần cuối form
Tại thẻ Format 4
- Caption đặt tiêu đề cho Form
- Width thay đổi chiều rộng
- Record Selectors bỏ ký hiệu chọn Record
Tại thẻ Data 5
- Record Source cho biết nguồn dữ liệu (Table/Query)
- Allow Addition Chon phép thêm record mới hay không
- Allow Deletions Chon phép xóa record hay không
- Allow Edits Chon phép sửa record hay không
Tại thẻ Other 6
- Pop Up Nếu chọn Yes thì là hiện thị ở dạng hộp thoại nổi lên
- Modal Nếu YES thì cho phép chuyển hộp thoại/cửa sổ khác khi Form đang mở
Khi bấm chọn các điều khiển (Control – các phần tử trong Form) thì cũng có Property Sheet để làm việc với điều khiển đó. Từ đó biết được thông tin về loại control, định dạng hiện thị (màu sắc, chữ), dữ liệu liên kết …
Các Control phát sinh tự động thường bố trị trong một Layout, để loại bỏ nó thì chọn các Control, trên Ribbon chọn Arrange > Remove Layout
Đưa nút lệnh Button vào Form
Chọn Button trong các Controls, đưa chuột vẽ nó vào Form. Cửa số Wizard xuất hiện, chọn hành động muốn thực hiện khi bấm vào nút bấm. Ví dụ, hành động là xóa Record : khi Wizard gợi ý chọn Categories là Record Operations, Action chọn là Delete Record, Tiếp theo nhập tiêu đề nút bấm ở vị trí Text.
Ví dụ mở Form
Tạo Form dạng Datasheet
Form dạng Datasheet, hiện thị các ô lưới để nhập dữ liệu tương tự như bảng tính Excel. Nguồn cấp dữ liệu có thể từ các Query hay các Table. Ví dụ tạo một Query đặt tên là CacLop để làm nguồn dữ liệu như sau:
Query này đơn giản liệt kê lại các trường dữ liệu của bảng LOP, tuy nhiên tạo ra Query sau này để có thể chỉnh sửa lọc dữ liệu. Nó có thể làm Form con trong một Form cha với dữ liệu lọc liên quan.
Các Query đó, rồi bấm tạo Form, chọn mục DataSheet, lưu lại và đặt tên Form là CacLop_Sub
Có thể chuyển sang chế độ Design View, tại đây có thể chỉnh tiêu đề cột 1, đặt các thuộc tính cho Control. Kết quả mở Form có dạng 2
Thực hành sử dụng Sub Form
Sub Form là một Form con nằm trong Form cha, nó có liên hệ dữ liệu với Record đang biên tập ở Form cha. Ví dụ, Form cha soạn thảo Record về ngành học, thì đồng thời nó hiện thị một Form con là danh sách các lớp học thuộc ngành học đó.
Tạo một Blank Form đặt tên là FormNganhLop, sau đó đặt các thuộc tính:
- Caption: Các ngành và lớp
- Record Selector: No
- Record Source: Chọn bảng NGANH
- Bật hiện thị Form Header, đặt vào đó một Label, nhập vào dòng chữ CÁC NGÀNH VÀ LỚP, sau đó định dạng sao cho dễ đọc.
Bấm vào nút bấm Add Existing Fields trên Ribbon (Design), kéo các trường hiện thị ở Field List bên phải vào Form gồm các trường NGANHID, TENNGANH, MA, Sonam.
Trong đó NGANHID thiết lập Visible là NO
Thêm vào Form các nút bấm Button, thiết lập là các Command Button với Category/Action thiết lập theo Wizard gồm các nút bấm gồm:
- Record Navigation > Go to Next Record
- Record Navigation > Go to Previews Record
- Record Operations > Delete Record
- Record Operations > Save Record
- Record Operations > Add New Record
Tiến hành các bước để đưa Form có sẵn là CacLop_Sub, sẽ chỉnh sửa để ở mỗi Record chính hiện thị danh sách các lớp theo ngành.
Kéo CacLop_Sub vào Form chính, chọn nó 1. Sau đó thiết lập liên kết với Form cha bằng trường liên hệ tại 2, gồm Link Master Fields và Link Child Fields, đó là hai trường liên hệ – NGANHID trong Form chả và NGANHID trong Form con.
Liên kết Control trong Form
Một Control trong Form có thể lấy giá trị của nó viết trong các truy vấn bằng mẫu [Forms]![TênForm]![TênControl]
Ví dụ từng bước thiết kế ra Form phức tạp để hiện thị danh sách học sinh của lớp được chọn. Có một ComboBox để chọn Khóa, khi một khóa được chọn thì danh sách các lớp thuộc khóa đó được liệt kê trong một List Box, khi có chọn lớp trong List Box thì hiện thị danh sách lớp trong một Sub-Form …
Tạo một Blank Form, đặt tên là FormHocSinhDS, kéo vào đó một ComboBox đặt tên là Khoa, thiết lập dữ liệu cho nó như sau:
- Row Source Type : Table/Query
- Row Source: Bấm vào … để xây dựng Query dữ liệu cho nó. SELECT NIENKHOA.KHOAID, NIENKHOA.TenKhoa FROM NIENKHOA;
- Bound Column: 1
- Default Value: điền giá trị mặc định khi mở Form (ví dụ 4)
- Column Count: 2
- Colunm Widths: 0cm;2.54cm
Tiếp tục đặt vào một List Box, đặt tên Lop, List Box này là danh sách các lớp thuộc Khóa chọn, có các thiết lập như sau:
- Row Source Type : Table/Query
- Row Source: Bấm vào … để xây dựng Query dữ liệu cho nó. SELECT LOP.LOPID, LOP.NIENKHOAID, TenCacLop.TENDAYDU
FROM TenCacLop INNER JOIN LOP ON TenCacLop.LOPID = LOP.LOPID
WHERE (((LOP.NIENKHOAID)=[Forms]![FormHocSinhDS]![Khoa]));
Query trên đã tham chiếu dữ liệu ở đoạn =[Forms]![FormHocSinhDS]![Khoa] - Bound Column: 1
- Column Count: 3
- Colunm Widths: 0cm;0cm;2.54cm
Lúc này nếu chạy lần đầu thì nó sẽ hiện thị đúng danh sách lớp tương ứng với Combo Box Khoa, tuy nhiên khi Form đang mở thì thay đổi Khoa nó chưa cập nhật theo. Để khắc phục:
Bắt sự kiện khi Combo Box thay đổi dữ liệu, tại thuộc tính On Change, bấm vào … để sinh hàm VBA khi Combo Box đổi giá trị. Trong thủ tục bắt sự kiện này, chỉ cần viết dòng code là yêu cầu Lop nạp lại dữ liệu Me![LOP].Requery, nội dung đầy đủ như sau:
Private Sub Khoa_Change()
Me![LOP].Requery
End Sub
Khi Khóa được chọn thì Lớp theo khóa hiện thị
Sub Form danh sách học sinh theo lớp
Tạo một Sub Form danh sách học sinh dạng DataSheet, với nguồn dữ liệu bảng học sinh, đặt tên là HocSinhLop
Ở phần Footer có thêm vào một TextBox đặt tên là sohocsinh, với thuộc tính Control Source là =Count([HOCSINHID]) để cho biết tổng học sinh trong danh sách.
Chuyển sang chế đố Datasheet View, chỉ hiện thị các cột như hình (các cột khác ẩn đi), trong đó cột Tên được thiết lập sắp xếp tăng dần.
Quay trở lại FormHocSinhDS, kéo HocSinhLop vào – đặt tên HOCSINH, thiết lập thuộc tính để liên kết với LOP
- Link Master Fields : Lop
- Link Child Fields : LOPID
Kéo thêm vào một TextBox hiện thị số học sinh của lớp, với thuộc tính Control Source : =[HOCSINH].[Form]![sohocsinh]
Kết quả chạy sẽ như sau:
Tiếp theo thực hiện tác vụ, nếu bấm kép vào Họ của một học sinh nào đó, thì sẽ hiện thị hộp thoạt soạn thảo chi tiết cho học sinh đó.
Chọn nguồn cấp là bảng HocSinh, bấm tạo Form đặt tên là HocSinhChiTiet như sau:
Quay trở lại chế độ Design View của HocSinhLop, tại Ho bắt sự kiện On Dbl Click, với nội dung VBA như sau:
Private Sub Ho_DblClick(Cancel As Integer)
DoCmd.OpenForm “HocSinhChitet”, , , “HOCSINHID = ” & Me![HOCSINHID].Value
End Sub
‘Mở Form HocSinhChitet, lọc HOCSINHID = Me![HOCSINHID]
‘Me![HOCSINHID] là giá trị hiện tại trên FormHocSinhDS