PhÇn VI: LËp tr×nh
Modules
Saturday, September 1, 2012 2
Access2000 - Modules
Access 2000 cho phÐp sö dông ng«n ng÷
VBA =
Visual Basic for Application ®Ó viÕt c¸c
hµm
(Function) vµ thñ tôc (Sub) nh»m xö lý
c¸c ®èi
tîng (Table, Queries, Form, Report,
Macro...)
®îc t¹o ra b»ng c¸c c«ng cô cña
Access.
Saturday, September 1, 2012 3
Access2000 - Modules
I. Các khái niệm cơ bản
1. Module là gì?
Là một đối tượng dùng để xây dựng các chương
trình con là: thủ tục và hàm, có thể thực hiện trực
tiếp hoặc gián tiếp thông qua các điều khiển trên
trên biểu mẫu (Form).
Module chia làm hai loại:
Module sử dụng chung: dùng để xây dựng các
thủ tục và hàm cấp chương trình.
Module riêng của các đối tượng trên Form,
report
Saturday, September 1, 2012 4
Access2000 - Modules
2. Cấu trúc chương trình con trong Module
a)Thủ tục Sub:
Sub Tên_Thủ_Tục(DS biến)
Các lệnh của thủ tục
End Sub
b)Hàm Function:
Function Tên_Hàm(DS biến) As Kiểu DL
Các lệnh tính toán của hàm
Tên_Hàm = Giá trị
End Function
Chú ý: Tên hàm, tên thủ tục bao gồm chữ cáI và chữ số. phải
được viết liền và không được bắt đầu từ số.
Saturday, September 1, 2012 5
Access2000 - Modules
3. Biến trong chương trình:
a)Khái niệm biến:
Biến là một vùng bộ nhớ được định danh bởi một
tên gọi, nhằm lưu trữ dữ liệu trong quá trình xử lý,
tính toán trong chương trình.
b)Cách khai báo biến:
Trong Access biến không bắt buộc phải khai báo
trước khi sử dụng. Nhưng để kiểm soát được bộ nhớ
và tránh việc sử dụng tên biến trùng nhau ta nên
khai báo các biến trước khi sử dụng.
Để khai báo biến ta dùng từ khoá DIM như sau:
Saturday, September 1, 2012 6
Access2000 - Modules
DIM Tên_biến As Kiểu_dữ_liệu
DIM, AS là hai từ khoá dùng để khai báo biến.
Tên_biến: là một chuỗi ký tự liên tiếp được bắt
đầu từ ký tự văn bản, không chứa dấu cách và
không trùng với từ khoá như: DIM, AS, SUB, ...
Kiểu dữ liệu là một trong các kiểu sau:
Saturday, September 1, 2012 7
Access2000 - Modules
Bảng mô tả giá trị của các kiểu dữ liệu cơ bản
Kiểu dữ liệu Mô tả kiểu Giá trị ban đầu
Byte
Nguyên từ 0 đến 255 0
Integer
Nhận giá trị nguyên ngắn 0
Long
Nhận giá trị nguyên dài 0
Single
Nhận giá trị thực đơn 0
Double
Nhận giá trị thực kép 0
String
Nhận giá trị văn bản
Rỗng
Boolean
True/ False False
Variant
Chưa định trước
Rỗng
VD: DIM A As Single, B As Long, Hoten As String*25
Nếu một biến chưa được khai báo khi sử dụng thì nó được mang kiểu Variant.
Saturday, September 1, 2012 8
Access2000 - Modules
c. Một số khái niệm khác
+ Phép gán:
Biến=<Biểu thức>
- Vế trái (Biến) chỉ có thể là một biến
- Vế phải (Biểu thức) có thể là biến, hằng
hay biểu thức. Nhưng kết quả trả về phảI
cùng kiểu với vế trái
Ví dụ: A=(B+C)/2
+ Các toán tử về số: +, -,*,/,
+ Các toán tử về xâu: +, &,
Saturday, September 1, 2012 9
Access2000 - Modules
a) Phân tich một chương trình.
B1: Xác định dữ liệu vào (Input) để khai báo biến.
B2: Xử lý, tính toán trên các biến.
B3: In kết quả.
VD: Chương trình vào hai số A, B từ bàn phím sau đó
tính Tổng và Tich.
-
A, B là hai biến có kiểu số thực, Tong, Tich là hai
biến để lưu kết quả của quá trình tính toán.
-
Tong = A + B, Tich = A*B.
-
In Tong và Tich
4. Soạn thảo và chạy chương trình.