1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Access: Chương 6 - Nguyễn Sơn Hải

31 11 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 31
Dung lượng 1,44 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Access: Chương 6 do Nguyễn Sơn Hải biên soạn nhằm mục đích phục vụ cho việc giảng dạy. Nội dung bài giảng gồm: Dạng lệnh hướng đối tượng, các thành phần cơ bản của ngôn ngữ, khai báo biến, các cấu trúc lệnh VBA, chương trình con,...

Trang 2

Giới thiệu chung

 Ngôn ngữ lập trình đi kèm với ACCESS là VBA – Viasual Basic For Applycation giúp người dùng tạo ra các chương trình ứng dụng mềm dẽo hơn theo ý muốn của mình.

 Cửa sổ viết lệnh: là nơi soạn thảo lệnh VBA, kích phải

chuột trên form (Report) chọn Builder Code: chọn đối

tượng, chọn sự kiện tương ứng

 C2: Chọn mục Module, New

Trang 3

Dạng lệnh hướng đối tượng

<Tên đối tượng> <thuộc tính> = <giá

Trang 4

Vi du

1 Các thành phần cơ bản của ngôn ngữ

1 Kiểu dữ liệu của biến nhớ

Boolean logic, 2 bytes, Yes/No

Byte số nguyên dương 1 byte (0

Currency tiền tệ, 8 bytes

String kiểu xâu ký tự, 255 ký tự, Text

Variant kiểu dữ liệu không tường minh

) 1 2

(

2 31  31 

Trang 5

2 Khai báo biến:

Dim i, j As Integer Khai báo biến i, j kiểu

Integer

 Dim i As Integer, st As String*15

 Dim i As Variant hoặc Dim i

 Dim Hoten(45) As String * 30 Khai

báo mảng kiểu String*30 gồm 46 phần tử

Dim A(3, 4) As Integer Khai báo biến

mảng 2 chiều A(i , j) trong đó: i = 0 3 và j =

0 4

Dim A(1 To 5, 4 To 9, 3 To 5) As Double

Dim MyArray()

Trang 7

Select Case <biểu

Thủ tục 1

endcase

T

B thức=gt 2

… … …

B thức=gt n

Trang 8

Vi du

Text2:

ControlSource: DTB Value :0

Vieá leänh KT ñieàu kieän

Trang 10

Wend

F

Trang 11

Ví dụ 2

Tạo Form nhập vào họ tên Tách tên, họ

Trang 12

n = Len(Hoten) For i = 1 To n kytu = Mid(Hoten, i, 1)

If kytu = " " Then

j = i End If Next Ten=Mid(Hoten, j + 1) Text2.Value=ten

Trang 13

4 Chương trình con

Các chương trình con được tổ chức thành một đối tượng nào đó gọi là Module

Cách tạo module:

Chọn mục Module \ chọn New: màn hình xuất hiện cửa

sổ viết lệnh VBA của module đó.

Trang 14

Vi du

Các ví dụ thông dụng

Ví dụ 1: Viết CT đăng nhập, kiểm tra mật

khẩu trước khi khởi động menu như sau:

Trang 15

B1: Tạo Menu

B2: Tạo một Module và xây dựng một hàm

MATKHAU với nội dung sau:

Trang 16

Vi du

B3: Xây dựng macro Autoexec như sau:

OpenForm Name Form: Menuchinh

Chú ý:

Form menuchinh đã tạo từ trước.

Macro có tên Autoexec sẽ tự đông thi hành

khi mở Access

Trang 18

Vi du

Function baso(nhom As Integer) As String

Dim tram, chuc, donvi As Single

Dim chuso(9) As String

Trang 19

baso = ""

If tram <> 0 Then

baso = baso + chuso(tram) + " trăm"

End If

“Doc hang chuc

If tram <> 0 And chuc = 0 And dv <> 0 Then

baso = baso + " lẻ"

Else

If chuc = 1 Then

baso = baso + " mười"

Else

If chuc <> 0 And chuc <> 1 Then

baso = baso + chuso(chuc) + "

Trang 20

Vi du

If dv = 1 And chuc > 1 Then

baso = baso + " mốt"

Else

If dv = 5 And chuc >= 1 Then

baso = baso + " lăm"

Trang 21

Public Function tienchu(sotien As Long) As String

Dim chuoitien, nhom As String

chuoitien = Right(Space(11) + Str(sotien), 12)

Dim donvi(4) As String

Trang 22

Vi du

nhom = Mid(chuoitien, i * 3 - 2, 3)

If nhom <> Space(3) And nhom <> "000" Then

tienchu = tienchu + baso(nhom) + donvi(i) + Space(1)

Trang 23

Ví dụ: Tạo Form nhập vào một số tiền, đọc số đó

ra chữ tương ứng.

Viết lệnh: nút Đọc tiền chữ

Label3.Caption = tienchu(x)

Trang 24

Vi du

Ví dụ : Tạo phiếu lương cho mỗi cán bộ cuối phiếu

đọc thực lĩnh ra chữ tương ứng

Trang 25

Giải thích

 Mã hoá mỗi ký tự trong các bảng mã VNI, TCVN3 và UNICODE là khác nhau nên sắp xếp khác nhau Muốn đúng quy cách tiếng việt thì bạn phải mã hoá các dấu tiếng việt

 Ví dụ: â < a chuyển mã a -> ab; a ->aa khi sắp xếp

aa < ab hay a < â

 Chú ý: trong bảng mã VNI chữ â cĩ độ dài là 2

TCVN3 chữ â cĩ độ dài là 1

Trang 26

Vi du

Public Function mahoaTCVN3(chuoi1 As String) As String Dim chuoix, chuoiy As String

Dim dodaichuoi, vitri As Byte

chuoix = "a ;à ; ả ; ã ;á ;ạ ;ă ;ẳ ;ẵ ;ắ ;ặ ;â ;ầ ;ẩ ;ẫ ;ấ ;ậ ;e

;è ;ẻ ;ẽ ;é ;ẹ ;ê ;ề ;ể ;ễ ;ế ;ệ ;i ;ì ;ỉ ;ĩ ;í ;ị ;o ;ò ;ỏ ;õ ;ó ;ọ ;ồ

;ổ ;ỗ ;ố ;ộ ;ờ ;ở ;ỡ ;ớ ;ợ ;u ;ù ;ủ ;ũ ;ú ;ụ ;ừ ;ử ;ữ ;ứ ;ự ;y

;ỳ ;ỷ ;ỹ ;ý ;ỵ ;D ;Đ "

chuoiy="aa;ab;ac;ad;ae;af;ag;ah;ai;aj;ak;al;am;an;ao;ap; ea;eb;ec;ed;ee;ef;eg;eh;ei;ej;ek;el;ia;ib;ic;id;ie;if;oa;ob;oc; od;oe;of;og;oh;oi;oj;ok;ol;om;on;oo;op;ua;ub;uc;ud;ue;uf

;ug;uh;ui;uj;uk;ya;yb;yc;yd;ye;yf;Da;Db"

mahoaVNI = Space(0)

Trang 27

Thuật toán

- Đinh nghĩa 2 chuỗi chuoix chứa các nguyên âm TV có dấu được sắp xếp theo quy định

TV

- Chuỗi chuoiy chứa các ký tự mã hóa tương ứng từng ký tự ở chuoix

- Lấy ký tự thứ nhất trong chuỗi cần mã hóa

B1: Xác định ví trí của ký tự trong chuoix

B2: Nếu ký tự đó không có trong chuỗi x thì lấy ký tự tiếp theo trong chuoi, quay lại b1

- Nếu ký tự có trong chuỗix thì lấy ký tự ở vị trí tương ứng trong chuỗiy, đưa ký tự đó vào kết quả.

- Quá trình dừng khi lấy hết ký tự trong chuỗi

- Lưu ý: Chuoix và chuoiy phải đảm bảo chính xác từng vị trí ký tự trong chuôix tương

ứng với chuôiy.

Trang 28

Vi du

dodaichuoi = Len(chuoi1)

vitri = 1

While vitri <= dodaichuoi

kytu = Mid(chuoi1, vitri, 1)

Trang 29

Ví dụ: sắp xếp cột tên trong bảng HSCB theo bảng mã VNI

(TCVN3) đúng quy cách tiếng việt

Tạo Query như sau:

Trang 30

Vi du

Kết quả

Trang 31

Câu hỏi kiểm tra 15 phút

Câu hỏi 1: Hãy kể

tên các kiển biến

Ngày đăng: 08/05/2021, 18:49

TỪ KHÓA LIÊN QUAN