Bài 0. Kiến thức chung về VBA

Liên hệ QC

befaint

|||||||||||||
Tham gia
6/1/11
Bài viết
14,365
Được thích
19,323
Bài 0. Kiến thức chung về VBA

(Danh sách các bài viết về VBA xem ở đây Index - Các bài viết về VBA)


VBA (Visual Basic for Applications) là ngôn ngữ lập trình trong môi trường Office và một số phần mềm khác. Ở phạm vi ở đây chỉ giới thiệu về VBA trong Excel.
Giao diện cửa sổ VBA:

upload_2017-10-20_13-5-15.png

Có hai cách mở cửa sổ VBA.
Cách 1: Tại bảng tính Excel, nhấn tổ hợp phím Alt + F11.
Cách 2: Ribbon / Developer / Visual Basic
upload_2017-10-19_23-2-12.png

* Cách làm hiện menu Developer trên ribbon:
Ở cửa sổ Excel vào Menu File/ Options. Tại sửa sổ Excel Options tới mục Customize Ribbon, danh sách Main Tabs bên trái thì check mục Developer. Click OK.
upload_2017-10-19_23-3-41.png

1. Định dạng file Excel chứa Macro
Các định dạng file Excel cho phép chứa marco, gồm: *xls, *xla (Excel 2003 trở xuống), *.xlsm, *.xlsb, *.xlam (Excel 2007 trở lên).
Chú thích: Với định dạng file *.xlsb cho file dung lượng nhỏ gọn, mở file nhanh, phù hợp file có dung lượng lớn.

2. Nơi đặt các macro (viết code ở đâu?)
(1) UserForm: Form (mẫu) giao diện người dùng thiết kế, và tất nhiên trong đó có các code để thực thi các yêu cầu;
(2) Module: Là nơi thường được đặt các macro ở đây: Các thủ tục (Sub), hàm (Function). Tức là những thư viện dùng chung;
(3) Class Module: Dùng để tạo ra các đối tượng (Object), mô tả thuộc tính, phương thức... của đối tượng được tạo ra;
(4) Worksheet: Thường đặt các thủ tục liên quan tới sự kiện của worksheeet (Sub_Change);
(5) Workbook: Thường đặt các thủ tục liên quan tới sự kiện của workbook.
upload_2017-10-19_23-5-12.png

3. Cách chèn một module
Mở cửa sổ VBA (Nhấn tổ hợp phím Alt + F11).
Menu Insert, Module

upload_2017-10-19_23-14-54.png

4. Macro setting
Thiết lập bảo mật cho macro:
Trên menu Developer, click Macro Security (hoặc Excel Options > Trust Center > Trust Center Settings... > Macro Settings).
Ở mục Macro Setting có 4 lựa chọn:
1/ Vô hiệu hóa mọi macro và không thông báo.
2/ Vô hiệu hóa mọi macro và kèm theo thông báo.
3/ Vô hiệu hóa mọi macro ngoại trừ những macro được ký điện tử.
4/ Cho phép tất cả các macro (không được khuyến cáo, các mã nguy hiểm có thể được chạy).
upload_2017-10-19_23-6-30.pngupload_2017-10-19_23-6-33.png

5. Protect macro
Để bảo vệ code được bí mật, bạn thiết lập mật khẩu bảo vệ cho Project của VBA.
Tại giao diện của VBA, vào Tools, VBAProject Properties...
Cửa sổ VBAProject Properties, tới tab Protection:
- Check dòng Lock project for viewing
- Nhập mật khẩu vào khung Password và Confirm password.
Click OK.
upload_2017-10-19_23-9-46.png

6. Nhận biết thuộc tính và phương thức của một đối tượng.
Method.png

7. Một số thủ thuật
- Dùng MsgBox để kiểm tra kết quả tại dòng code bất kỳ.
- Dùng chức năng Step Into (nhấn phím F8) để kiểm tra từng dòng code.
upload_2017-10-19_23-7-50.png

- Dùng cửa sổ Immediate (Ctrl + G) để kiểm tra nhanh kết quả của một dòng code.

upload_2017-10-19_23-8-29.png
 
Lần chỉnh sửa cuối:
1. Cần giải thích ý nghĩa của từ Macro

2. Cần giải thích ý nghĩa của từ Module

3. Trong cái hình chụp cửa sổ VBE, bạn chỉ cho thấy mục Code Window (bên phải), muc Property Window (bên trái), nhưng không cho thấy mục Immediate Window (nếu có thì nó mặc định là ngay bên dưới mục Code Window). Đó là thiếu sót lớn.
 
Upvote 0
Web KT
Back
Top Bottom