- Actions: chứa danh sỏch cỏc lệnh của mỗi nhúm.
4. Cấu trỳc WHIL E WEND
8.5. Th viện hàm h oc thủ tục sẵ nc của MS Access
Lệnh DoCmd
Bạn cú thể dựng lệnh DoCmd để thi hành cỏc cụng việc thụng thường trờn Access thụng qua mụi trường VBA. Vớ dụ như: dựng DoCmd để cú thể mở form, mở report, query, lọc dữ liệu, thi hành macro xử lý bản ghi, ứng dụng,.. Hầu hết cỏc thao tỏc xử lý trờn cỏc đối tuợng của Access đều cú thể dựng lệnh doCmd để gọi ra thực hiện trong mụi trường VBA. Dưới đõy liệt kờ một số cỏc phộp xử lý của lệnh DoCmd thụng dụng:
Lệnh đúng một đối tượng Lệnh này để đúng (Close) hoặc giải phúng đối tượng nào đú ra
khỏi bộ nhớ. Hay dựng lệnh này để đúng form đang hoạt động hoặc đúng một report đang preview.
Cỳ phỏp như sau:
DoCmd.Close [ObjectType], [ObjectName], [SaveOption]
ObjectType chỉ kiểu đổi tượng cần đúng. Cụ thể như sau:
acForrm Đúng form acReport Đúng report acQuery Đúng query acTable Đúng bảng
ObjectName - chỉ tờn đối tượng cần đúng;
SaveOption - chỉ định tuỳ chọn ghi lại cấu trỳc (nếu cú sự thay đổi). Cụ thể:
SaveNo hụng khi lại SaveYes Luụn ghi lại
SavePromt Hiển thị h p thoại nhắc để ghi nếu cú sự thay đổi
Vớ dụ sau để đúng form frmHoadon, khụng cần ghi lại cấu trỳc nếu cú sự thay
DoCmd.Close acForm, "frmHoadon", acSaveNo
Đặc biệt, để ra lệnh đúng đối tượng chủ đang mở chỉ cần ra lệnh sau: DoCmd.Close
Lệnh mở form Là một lệnh hoàn chỉnh để mở và thiết lập mụi trường làm việc cho một form.
Cỳ phỏp như sau:
DoCmd.OpenForm [objectName], [ViewMode], [FilterName], [WhereCondition], [DataMode], [WindowsMode]
Trong đú:
ObjectName – tờn form muốn mở; ViewMode - chế độ mở. Cụ thể: acDesign Mở form ra chế độ thiết kế acNormal Mở form ra để thi hành FilterName - Đặt lọc
WhereCondition - Giới hạn cỏc bản ghi trong nguồn dữ liệu DataMode - thiết lập chế độ dữ liệu trờn form, cụ thể:
WindowsMode - thiết lập kiểu cửa sổ form là: acDialog Kiểu hộp thoại
acWindowsNormal Kiểu cửa sổ bỡnh thường
Vớ dụ: Dưới đõy là lệnh mở form lập hoỏ đơn bỏn hàng (frmLapHoaDon), trong đú chỉ hiển thị nội dung của hoỏ đơn cú mó "HĐ0035"
Lệnh mở report Là một lệnh hoàn chỉnh để mở và thiết lập mụi trường làm việc cho một
report.
Cỳ phỏp như sau:
DoCmd.OpenReport [objectName], [ViewMode], [FilterName], [WhereCondition], [DataMode], [WindowsMode]
Trong đú:
ObjectName – tờn Report muốn mở; ViewMode - chế độ mở. Cụ thể: acDesign Mở Report ra chế độ thiết kế acNormal Mở Report ra để thi hành FilterName - Đặt lọc
WhereCondition - Giới hạn cỏc bản ghi trong nguồn dữ liệu DataMode - thiết lập chế độ dữ liệu trờn Report , cụ thể: WindowsMode - thiết lập kiểu cửa sổ Report là:
acDialog Kiểu hộp thoại
acWindowsNormal Kiểu cửa sổ bỡnh thường
Vớ dụ: Dưới đõy là lệnh Preview report để in ra hoỏ đơn bỏn hàng (rptHoaDon), trong đú chỉ hiển thị nội dung của hoỏ đơn hiện tại trờn một form (ụ chứa mó hoỏ đơn là txtHoadonID)
DoCmd.OpenReport "rptHoadon",,,"hoadonID = '" + txtHoadonID + "'" Lệnh thi hành cõu lệnh SQL Dựng để thi hành một lệnh SQL.
Cỳ phỏp như sau:
DoCmd.RunSQL
Giả sử trờn bảng canbo cú thờm trường luongchinh. Lệnh sau đõy sẽ cập nhật giỏ trị cho trường này thụng qua lệnh SQL cập nhật dữ liệu: DoCmd.RunSQL "UPDATE canbo SET luongchinh = hessoluong*290000"
Hoặc dưới đõy là lệnh xoỏ bỏ những cỏn bộ đến tuổi nghỉ hưu ra khỏi CSDL: DoCmd.RunSQL "DELETE * FROM canbo " _
+ " WHERE (Year(Date())-Year([ngaysinh])>=60 AND gioitinh=Yes)"_ + " OR (Year(Date())-Year([ngaysinh])>=55 AND gioitinh=No)"
Bài tập
Một số bài toỏn sử dụng Form, một số đối tượng điều khiển (Control), cỏc khai bỏo, cỏc cấu trỳc lệnh và những kỹ thuật liờn quan để giải quyết một số bài toỏn thực tế đơn giản.
Bài toỏn 1: Nhập vào một số nguyờn và kiểm tra số đú là ch n hay số lẻ?
Thiết kế form như sau:
Form
Caption: iểm tra số chẵn - lẻ Default view: Single Form Scroll bar: Neither
Record selector: No Navigation Buttons: No Diving line: No
ễ nhập số cần kiểm tra: Name: Text0
N t iểm tra chẵn lẻ: Name: cmdChanLe; Caption: iểm tra chẵn lẻ N t Đ ng :Name: cmdClose; Caption: Đúng
Hóy viết mó lệnh cho cỏc nỳt trờn để thực hiện yờu cầu của bài toỏn.
Bài toỏn 2: Nhập vào 2 số nguyờn và tớnh USC và BCS của 2 số đú
Form
Caption: Tỡm USC và BSC Default view: Single Form Scroll bar: Neither
Record selector: No Navigation Buttons: No Diving line: No ễ nhập số cần kiểm tra ễ Thuộc tớnh Name A: txtA B: txtB USC: txtUSC BSC: txtBSC Nỳt Tớnh toỏn Name: cmdTinhToan Caption: Tớnh toỏn Nỳt Đ ng Name: cmdClose Caption: Đúng
Bài toỏn 3: Nhập vào 3 hệ số A, B, C của phương trỡnh bậc hai Ax2 + Bx+C =0
và cho biết nghiệm phương trỡnh đú: Thiết kế form như sau:
Thiết lập thuộc tớnh cho cỏc đối tượng như sau:
Form
Caption: iải phương trỡnh bậc 2 Default view: Single Form Scroll bar: Neither
Record selector: No Navigation Buttons: No Diving line: No ễ nhập số cần kiểm tra ễ Thuộc tớnh Name A: txtA B: txtB C: txtC Nỳt Tớnh toỏn Name: cmdGPTB2
Caption: iải phương trỡnh
N t Đ ng
Name: cmdClose Caption: Đúng