Tải bản đầy đủ (.pdf) (314 trang)

Xử lý tự động trong tin học văn phòng - Tập 1

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.58 MB, 314 trang )

Chú ý:

Tài liệu này được thiết lập tự động cập
nhật tất cả các liên kết và mã lập trình
đều ở dạng dữ liệu Việt Pháp. Máy
tính cần chỉnh về dạng Việt Pháp trước
khi xem, soạn, sửa, bổ sung

Không thực hiện sửa chữa đè lên phần
nội dung có mã nền đen như thế này.
Khi sửa chữa xong, bôi đen chọn toàn
bộ văn bản, nhấn phím F9 để cập nhật
không cắt hình chuyển vị trí mà chỉ
chuyển phần chữ, do các hình đều đặt
BookMark liên kết, nếu không đặt lại
đúng sẽ bị lỗi hàng loạt.



QUÂN CHỦNG PHÕNG KHÔNG - KHÔNG QUÂN
HỌC VIỆN PHÕNG KHÔNG - KHÔNG QUÂN














XỬ LÝ TỰ ĐỘNG
TRONG TIN HỌC VĂN PHÕNG
Tập 1
















HÀ NỘI - 2010

QUÂN CHỦNG PHÕNG KHÔNG - KHÔNG QUÂN
HỌC VIỆN PHÒNG KHÔNG - KHÔNG QUÂN
















XỬ LÝ TỰ ĐỘNG
TRONG TIN HỌC VĂN PHÕNG
Tập 1
(Tài liệu dùng cho đối tượng đào tạo nhân lực CNTT
của Học viện Phòng không - Không quân)


















HÀ NỘI - 2010

(Quyết định ban hành số……………, ngày…… , tháng… , năm 201
của Giám đốc Học viện Phòng không - Không quân)





















Tác giả:
Chủ biên: KS Nguyễn Anh Cường

Trưởng ban CNTT
Học viện Phòng không - Không quân

0988.529.310
Người hiệu đính:
Nguyễn Phương Thảo
Giám đốc Trung tâm Tin học ABC
Cửa hàng trưởng 148 Vương Thừa Vũ - Hà Nội
Trang phục may sẵn rẻ nhất Hà Nội

0912.678.515



1
Nguyễn Phương Thảo 0912.678.515

MỤC LỤC
MỤC LỤC 1
CHỮ VIẾT TẮT 3
LỜI NÓI ĐẦU 4
Chương 1: THIẾT LẬP DỮ LIỆU HỆ THỐNG VÀ CÀI ĐẶT MICROSOFT
OFFICE 5
1.1. Một số vấn đề thiết lập hệ thống 5
1.2. Cài đặt Microsoft Office 9
Kết luận chương 14
Câu hỏi ôn tập chương 14
Chương 2: NGÔN NGỮ VISUAL BASIC CHO ỨNG DỤNG 15
2.1. Tổng quan về Visual Basic cho ứng dụng 15
2.2. Cơ bản về ngôn ngữ lập trình Visual Basic 19

2.3. Chức năng macro trong Microsoft Office 63
2.4. Tùy biến nút lệnh và tổ hợp phím tắt trong các phần mềm Office 72
Kết luận chương 78
Câu hỏi ôn tập chương 79
Chương 3: CÁC TỆP LƯU TRỮ TUỲ BIẾN 80
3.1. Normal.dot trong Microsoft Word 80
3.2. Personal.xls và các tệp hỗ trợ tuỳ biến trong Microsoft Excel 104
Câu hỏi ôn tập chương 106
Chương 4: XỬ LÝ TỰ ĐỘNG CHUYÊN BIỆT TRONG MICROSOFT WORD 107
4.1. Về định dạng 107
4.2. Xử lý tự động văn bản tiếng Việt 129
Kết luận chương 149
Câu hỏi ôn tập chương 149
Chương 5: XỬ LÝ TỰ ĐỘNG HỖN HỢP TRONG MICROSOFT WORD 151
5.1. Xử lý tự động trong khi nhập văn bản 151
5.2. Xử lý tự động tổng hợp 164
Kết luận chương 197
Câu hỏi ôn tập chương 197
Chương 6: CÁC TRƯỜNG TRONG MICROSOFT WORD 199
6.1. Căn bản về các trường trong Microsoft Word 199
6.2. Những nguyên tắc cơ bản khi làm việc với trường trong Microsoft Word 201
6.3. Tính toán các trường Microsoft Word 208
6.4. Làm việc với trường ngày tháng 220
6.5. Làm việc với trường thời gian 235234
6.6. Điều khiển vị trí các ký tự thông qua trường Advanced 239238
6.7. Nối kết dữ liệu 240239
Kết luận chương 247246
Câu hỏi ôn tập chương 248247
Chương 7: MỘT SỐ THAO TÁC TRONG MICROSOFT EXCEL 250248
2

Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
7.1. Một số nội dung cần thống nhất trước khi làm việc với Microsoft Excel 250248
7.2. Nhập nhanh dữ liệu 253251
7.3. Kiểm soát việc nhập dữ liệu 267265
Kết luận chương 278276
Câu hỏi ôn tập chương 278276
Chương 8: THIẾT LẬP CÔNG THỨC CHO CÁC Ô BỊ ĐỘNG 279277
8.1. Điều khiển kiết xuất dữ liệu bị động trong Microsoft Excel 279277
8.3. Tổng hợp dữ liệu 294292
8.4. Lọc dữ liệu 297295
8.5. Ô thứ cấp bị động phụ thuộc vào nhiều ô 300298
8.6. Xử lý phân nhánh 301299
Kết luận chương 303301
Câu hỏi ôn tập chương 303301
TÀI LIỆU THAM KHẢO 304302

3
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
CHỮ VIẾT TẮT

Nhấn phím Enter trên bàn phím
B
Bước
BKAV
Bách Khoa AntiVirus
CNTT
Công nghệ thông tin
COM

Component Object Model, mô hình đối tượng
dạng nội dung
CSDL
Cơ sở dữ liệu
DDE
Dynamic Data Embedding, nhúng dữ liệu
động
DL
Dữ liệu
Excel
Microsoft Excel
IDE
Integrated Development Enviroment, môi
trường phát triển tích hợp
MSDN
Microsoft Developer Network
OCT
Office Customization Tool, công cụ tuỳ biến
Office
OLE
Object Linking and Embedding, nhúng và liên
kết đối tượng
TCVN3 (ABC)
Bảng mã chuẩn ký tự Việt Nam trước năm
2003
UNICODE
Bảng mã chuẩn ký tự Quốc tế, đồng thời là
bảng mã chuẩn ký tự Việt Nam từ năm 2003
VB
Visual Basic

VBA
Visual Basic cho ứng dụng
VD
Ví dụ
VSTO
Visual Studio Tools for Office, công cụ trực
quan cho Office
Word
Microsoft Word
XML
Extensible Markup Language, ngôn ngữ đánh
dấu mở rộng
XLB
Excel Library ToolBar, thư viện thanh công cụ
của Excel
XLA
Excel Library Add-In, thư viện mở rộng của
Excel


4
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
LỜI NÓI ĐẦU
Để đáp ứng cho nhu cầu ứng dụng CNTT trong học tập, nghiên cứu và
giảng dạy của Học viện, tài liệu “Xử lý tự động trong tin học văn phòng” được
biên soạn nhằm giúp cho người học nắm rõ bản chất của vấn đề cần xử lý, tạo tiền
đề cho việc xây dựng và phát triển ứng dụng CNTT trong công tác văn phòng.
Tài liệu “Xử lý tự động trong tin học văn phòng” thống nhất nội dung
của những tài liệu dịch nguyên bản từ tiếng Anh, các tài liệu và những bài viết

về bộ phần mềm Microsoft Office hiện có trên Internet và những tài liệu đã xuất
bản. Nội dung chủ yếu tập trung đi sâu vào những vấn đề liên quan đến xử lý tự
động trong văn phòng Microsoft Word, Microsoft Excel, kết nối, liên kết dữ
liệu ở phiên bản 2003, 2007 đã và đang sử dụng trong Học viện, phù hợp với
yêu cầu nội dung, chương trình đào tạo nhân lực CNTT.
Bố cục của tài liệu gồm 8 chương:
- Chương 1: Thiết lập dữ liệu hệ thống và cài đặt Microsoft Office;
- Chương 2: Ngôn ngữ Visual Basic cho ứng dụng;
- Chương 3: Các tệp lưu trữ tuỳ biến;
- Chương 4: Các xử lý tự động chuyên biệt trong Microsoft Word;
- Chương 5: Xử lý tự động hỗn hợp trong Microsoft Word;
- Chương 6: Các trường trong Microsoft Word;
- Chương 7: Các thao tác trong Microsoft Excel;
- Chương 8: Thiết lập công thức cho các ô bị động trong Microsoft Excel.
Tài liệu dùng cho các lớp đào tạo nhân lực CNTT với những học viên đã
sử dụng tin học trong công tác văn phòng; phục vụ cho dự án của Học viện,
đồng thời cũng thích hợp cho các giáo viên, các lập trình viên, học viên viết đồ
án, luận văn tốt nghiệp và cán bộ đang viết chuyên đề, giáo trình, tài liệu.
Tài liệu được biên soạn lần đầu, rất mong nhận được ý kiến đóng góp
của bạn đọc để tài liệu ngày càng hoàn thiện.
Xin trân trọng cảm ơn!
Tác giả
5
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
Chương 1:
THIẾT LẬP DỮ LIỆU HỆ THỐNG VÀ CÀI ĐẶT MICROSOFT OFFICE
Chương này trình bày cách chỉnh hệ thống theo chuẩn Việt Nam và thực hiện
cài đặt để các nội dung xử lý và ví dụ của những chương sau trong tài liệu này được
thực hiện đúng. Việc xác định và thiết lập các dữ liệu Việt Pháp giúp cho xử lý những

vấn đề liên quan đến dữ liệu thông dụng không mắc lỗi. Việc cài đặt đầy đủ cho phép
tận dụng được mọi khả năng của Microsoft Office đồng thời nắm rõ phần mềm
BKAV để tránh không làm hỏng các macro.
1.1. Một số vấn đề thiết lập hệ thống
1.1.1. Điều chỉnh dữ liệu về dạng Việt Pháp
a) Công dụng
Dùng để thống nhất dữ liệu trong tài liệu đúng với quy định Việt Nam. Nếu
không điều chỉnh, dữ liệu sẽ được xử lý không đúng, (các ví dụ trong tài liệu này cũng
không loại trừ) chính vì vậy phải là công việc cần kiểm tra đầu tiên khi sử dụng máy tính.
b) Một số quy định về dữ liệu dạng Việt Pháp
- Về số:
+ Sử dụng dấu chấm để ngăn cách các nhóm 3 số, mô tả giá trị ngàn, triệu, tỉ
+ Sử dụng dấu phảy để ngăn cách đối với giá trị phần nguyên và phần thập phân.
+ Sử dụng dấu trừ (-) làm ký hiệu số âm và được đặt ở trước phần giá trị của số.
- Về tiền tệ:
+ Quy định theo cách viết về số.
+ Ký hiệu chỉ đơn vị tiền tệ đứng sau phần chữ số.
- Về thời gian:
+ Quy định viết theo thể thức ngày/tháng/năm.
Bảng 1.1. Định dạng Việt Pháp và Anh Mỹ
Số
Viết theo định dạng
Việt Pháp
Anh Mỹ
1000 1/4
1.000,25
1,000.25
Ngày 10 tháng 3 năm 2010
10/3/2010
3/10/2010

10000000 đô là
10.000.000 $
$ 10,000,000
123 độ dưới 0
-123
O
C
(123
O
C)
Đơn vị đo theo hệ
Metric (mét)
U.S (inch)
c) Cách điều chỉnh
B1. Vào Control Panel. (Start/Control Panel)
B2. Vào Regional And Language Options, hộp thoại hiện ra. (hình 1.11.1
trang 6) chọn nút Customize Điều chỉnh lần lượt 4 thẻ gồm Number, Current,
Time, Date, thẻ nào trước cũng được, theo quy định định dạng Việt Pháp theo các
hình vẽ (từ hình 1.21.2 đến hình 1.51.5) sau đó chọn Apply và OK.
Chú ý: - Khi làm việc với các phần mềm, sử dụng định dạng Việt Pháp.
- Khi làm việc, lập trình bằng VBA, sử dụng cách viết và định dạng Anh Mỹ.
- Khi nhập dữ liệu số, không nhập định dạng, để Office tự định dạng.
Formatted: Do not check spelling or grammar
Formatted: Do not check spelling or grammar
Formatted: Do not check spelling or grammar
6
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền

Hình 1.1. Hộp thoại Regional And Language Options


Hình 1.2. Điều chỉnh hiển thị số ở Tab Numbers về dạng Việt Pháp
Điều chỉnh để đƣa
dữ liệu về dạng
Việt Pháp
7
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền

Hình 1.3. Điều chỉnh hiển thị tiền tệ ở Tab Currency về dạng
Việt Pháp

Hình 1.4. Điều chỉnh hiển thị thời gian ở Tab Time về dạng
Việt Pháp
8
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền

Hình 1.5. Điều chỉnh hiển thị ngày tháng ở Tab Date về dạng
Việt Pháp
1.1.2. Biểu diễn dữ liệu ngày tháng trên trục thời gian
a) Bản chất dữ liệu thời gian
Khoảng thời gian ngầm định
Ngày d
1
Ngày d
2




1900 Hôm nay 2078

Số ngày
Hình 1.6. Sơ đồ mô tả vị trí từng thời điểm trên trục thời gian
- Theo ngầm định, máy tính quy định trục thời gian bắt đầu từ năm 1900 và kết
thúc ở năm 2078. Khoảng thời gian này có thể được điều chỉnh phù hợp với thực tế và
khả năng tính toán tự động của mỗi dạng bài toán. Về việc nhập dữ liệu năm khi nhập
2 con số, máy tính sẽ tự hiểu và tự động điền bổ sung hai con số để hoàn thành giá trị
năm. Khi nhập năm 99 thì máy tính tự hiểu là năm 1999. Nhập năm 11, máy tính tự
điền là năm 2011. Tuy nhiên khi nhập năm 30 có thể máy tính này coi là năm 1930,
máy tính khác coi là năm 2030. Trên hình 1.5ình 1.5 trang 8 phần Calendar có thể
điều chỉnh được khoảng thời gian quy định này để máy tính tự nhập đúng với ý định.
Mỗi một thời điểm là 1 điểm trên trục thời gian.
- Theo quy định thì những ngày đứng sau (ngày d
2
) được coi là lớn hơn ngày
9
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
đứng trước (ngày d
1
). Nên khi lấy ngày d
2
trừ ngày d
1
sẽ được số ngày. Tương tự lầy
ngày d
1
cộng với số ngày sẽ được ngày d
2

.
- Những quy định liên quan đến ngày, tháng, thời gian là một trong những dữ
liệu quan trọng trong xử lý tự động liên quan đến những công việc văn phòng.
b) Những điều suy ra từ trục thời gian
Ngày cuối hoặc (số ngày) của một tháng = Ngày đầu tiên tháng kế tiếp - 1
Mỗi năm có 365,25 ngày (Vì thông thường, 4 năm sẽ thêm 1 ngày thành năm
nhuận nên có thêm chỉ số,25) nên muốn tính số năm (n
y)
từ số ngày (n
d
) thì có thể sử
dụng công thức:
365,25
n
n
d
y


(1.1)
Vì số năm thường tính số nguyên, nên khi muốn làm tròn thành số nguyên thì
sử dụng công thức:
)
365,25
n
(n
d
y
INT


(1.2)
Trong đó INT là hàm dùng để chuyển kết quả trong biểu thức đối số của nó
thành số nguyên. Hay:
)
365,25
d - d
(n
12
y
INT

(1.3)
Trong đó d
2
là ngày sau, d
1
là ngày trước.
Ngoài ra có thể nhận được số dư của phép chia thông qua hàm MOD (trong
Microsoft Excel) hoặc phép tính MOD trong VBA.
Trong Microsoft Excel sẽ viết theo hàm:
∆ = MOD(A
x
; B
x
)
(1.4)
Trong VBA sẽ viết theo khuôn dạng:
∆ = A
x
MOD B

x

(1.5)
Trong đó:
∆: Kết quả cần tính số dư.
A
x
: Biểu thức số bị chia.
B
x
: Biểu thức số chia.
1.2. Cài đặt Microsoft Office
1.2.1. Nguyên tắc khi cài đặt Microsoft Office
Để làm việc với xử lý tự động, Microsoft Office phải luôn được cài đặt đầy đủ,
không bỏ chức năng nào và phải chạy tất cả từ máy tính. Việc cài đặt ngầm định sẽ
không đáp ứng được, vì thiếu các lựa chọn, nên không phục vụ được cho xử lý tự động.
Khi hiện các thông báo “Compile error in Hidden Module” phải tiến hành:
- Cài đặt bổ sung cho Office tất cả các chức năng.
- Bổ sung thư viện hàm và thủ tục cho VBA.
- Không sử dụng chức năng xoá macro của chương trình diệt BKAV (nếu sử
dụng phần mềm diệt virus này).
10
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
1.2.2. Cài đặt đầy đủ Microsoft Office
Chạy cài đặt giống như đối với bất cứ một phần mềm nào, cho đến khi có hộp
thoại lựa chọn cách cài, phải chọn Custom và Run All From My Computer.
VD 1: Cài Microsoft Office 2003, chạy tệp SETUP.EXE trong thư mục nguồn
cài đặt. Có thể điền sẵn các thông tin vào vùng [Options] của tệp SETUP.INI thì khi
cài, Office sẽ tự động điền các thông tin cần thiết, chỉ việc chọn Next.

(Thường đặt dòng mã cài PIDKEY=GWH28DGCMPP6RC46J4MT3HFDY)

Hình 1.7. Hộp thoại nhập mã cài đặt Office 2003

Hình 1.8. Hộp thoại nhập thông tin người dùng

Hình 1.9. Chọn Custom để cài đặt đầy đủ
11
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền

Hình 1.10. Chọn Advanced Customization of Application

Hình 1.11. Chọn Microsoft Office rồi chọn Run all from My Computer

Hình 1.12. Hộp thoại xác nhận, đồng ý chọn Install
Microsoft Office sẽ thực hiện cài đặt, copy vào máy, ghi các lựa chọn vào
registry các thiết lập ban đầu, chờ cho đến khi hiện hộp thoại có nút Finish, quá trình
cài đặt mới hoàn thành.
12
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền

Hình 1.13. Hộp thoại báo cài xong
Trường hợp không cài đặt Full sẽ gặp thông báo ngay khi vào một phần mềm
bất kỳ của Microsoft Office, ví dụ trường hợp vào Microsoft Word:

Hình 1.14. Báo lỗi module ẩn, do không cài đặt đầy đủ Microsoft Office, (tất
cả có bao nhiêu module trong normal.dot sẽ hiện bấy nhiêu thông báo này)
Phải tiến hành cài đặt đầy đủ để bổ sung phần còn thiếu.

1.2.3. Cài đặt bổ sung Microsoft Office
Bằng cách chạy lại tệp cài đặt bộ OFFICE (setup.exe), đến khi hiện hộp thoại
thì chọn như hình vẽ:

Hình 1.15. Chọn “Add or Remove Features” để cài bổ sung Office
Các bước còn lại của cài bổ sung sẽ hiển thị lại từ hộp thoại hình 1.11ình 1.11
trang 11.
Nếu cài đặt Full, nhưng vẫn báo lỗi “Compile error in Hidden Module” là
do những thư viện bổ sung chưa cập nhật, vì lần cài đặt trước chưa đầy đủ, phải cập
Formatted: Condensed by 0,6 pt
13
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
nhật các thư viện này bằng tay trong Microsoft Office (VD Microsoft Word) như sau:
B1. Vào VBA bằng Alt + F11.
B2. Chọn Tools/References đánh dấu các thư viện cần sử dụng tối thiểu phải
chọn các thư viện như hình 1.16ình 1.16 trang 13.

Hình 1.16. Bổ sung các thư viện tối thiểu sẽ sử dụng
1.2.4. Chú ý khi sử dụng chương trình Bách Khoa AntiVirus

Hình 1.17. Nếu không cản thận, BKAV là chương trình phá hỏng mọi
chức năng xử lý tự động, khi chọn “Xoá tất cả Macro”
Formatted: Condensed by 0,5 pt
14
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
Trong quá trình xử lý tự động, làm việc chủ yếu với các macro. Các macro này
với bất cứ phần mềm diệt virus nào cũng không có vấn đề gì, ngoại trừ phần mềm diệt
virus BKAV sẽ xoá mất macro nếu đánh dấu mục “Xoá tất cả các macro”. BKAV là

chương trình diệt virus duy nhất cho tới thời điểm này, không phân biệt được virus với
macro. Cho nên để tránh những sai sót đáng tiếc, tài liệu khuyến cáo không nên sử
dụng chương trình diệt Virus BKAV.EXE khi máy tính có dùng các chức năng xử lý
tự động.
Kết luận chương
Chương này mặc dù chỉ nêu vấn đề liên quan đến điều chỉnh, cài đặt đầy đủ và
bổ sung Microsoft Office nhưng có vai trò rất to lớn, làm nền móng cho mọi vấn đề xử
lý tự động đề cập ở những chương sau. Cần nắm chắc những nội dung của chương này
để tránh những lỗi đáng tiếc.
Trên thực tế có rất nhiều dạng toán liên quan đến thời gian nên phải nắm chắc
quy định của máy tính về thời gian để đưa ra những thuật toán, phương pháp xử lý đối
với thời gian hợp lý. Những nhầm lẫn về nội dung này sẽ ảnh hưởng rất lớn đối với
các nội dung cần đưa ra, thậm chí có nhiều kết quả trái ngược với yêu cầu xử lý.
Câu hỏi ôn tập chương
1. Định dạng dữ liệu kiểu Việt Pháp và Anh Mỹ có đặc điểm gì giống nhau,
trái ngược nhau?
2. Khi nhập giá trị 1000 vào 1 ô trong Microsoft Excel có 3 cách nhập, chọn
cách đúng nhất, giải thích tại sao?
a) Nhập “1.000” b) Nhập “1,000” c) Nhập “1000”
3. Thực hiện điều chỉnh dữ liệu về dạng Việt Pháp đối với các hệ điều hành
Windows Vista, Windows 7 hoặc các hệ điều hành mới hơn (nếu có).
4. Thực hiện cài đặt Full các bộ cài Microsoft Office 2007, Microsoft Office
2010 hoặc version cao hơn.
5. Ở một máy tính, khi nhập ngày tháng năm vào một ô trong Microsoft Excel,
nhưng Microsoft Excel cứ tự nhận “tháng, ngày, năm”, nêu cách khắc phục
6. Xác định thuật toán để trả về số ngày trong tháng hiện tại.
7. Xác định thuật toán để trả về ngày cuối cùng của tháng bất kỳ.
8. Khi một người A sinh nhật ngày 1/4 và một người B sinh nhật ngày 30/4,
nếu quan niệm “ngày sinh của người B lớn hơn ngày sinh của người A” thì đúng hay
sai, vì sao?

15
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
Chương 2:
NGÔN NGỮ VISUAL BASIC CHO ỨNG DỤNG
Để làm việc hiệu quả đối với công tác văn phòng thông qua các phần mềm
ngoài việc đòi hỏi sử dụng thành thạo còn phải am hiểu và nắm rõ bản chất của vấn đề
đang thực hiện. Trong tất cả các phần mềm nói chung và bộ phần mềm Microsoft
Office nói riêng, đều cho phép người dùng có một khả năng tùy biến để thiết lập, cải
tiến, bổ sung, điều chỉnh những chức năng của phần mềm. Việc thay đổi này giúp cho
việc khai thác sử dụng được linh hoạt mang lại những kết quả ấn tượng và nhanh
chóng. Chương này giới thiệu những kiến thức cơ bản về Visual Basic cho ứng dụng
làm nền tảng để lập trình bổ sung các chức năng mới cho Office.
2.1. Tổng quan về Visual Basic cho ứng dụng
2.1.1. Giới thiệu
Một số phần mềm đã cho phép người dùng có thể cần thiệp sâu vào bên trong
nó bằng các công cụ lập trình, để có thể tự giải quyết các bài toán phát sinh mà tác giả
phần mềm không dự kiến trước được. Khi người dùng xây dựng những chương trình
dựa trên những ứng dụng được thiết kế theo cấu trúc mở này, họ sẽ tận dụng những
khả năng sẵn có của chúng để làm nền, giúp cho việc lập trình được nhanh và hiệu quả
hơn rất nhiều so với cách lập trình thông thường, nên có thể gọi chúng là các ứng dụng
nền. Điển hình và được sử dụng nhiều nhất làm ứng dụng nền trong tin học văn phòng
là Microsoft Word và Microsoft Excel. Ngoài việc phù hợp với định dạng tài liệu trong
văn phòng (văn bản và bảng tính) chúng còn cho phép người dùng xây dựng các
chương trình chạy cùng với mục đích và bổ sung thêm các chức năng chuyên biệt.
Một phần mềm được gọi là ứng dụng nền khi thỏa mãn đồng thời các tiêu chí:
- Cho phép một chương trình chạy bên trong và cùng với nó (tương tự như một lệnh).
- Cho phép sử dụng các tính năng của nó thông qua công cụ lập trình thích hợp.
- Một lệnh mới hay một chức năng mới được xây dựng trên ứng dụng nền thực
chất là một chương trình hoàn chỉnh, vì vậy để xây dựng nó, cần có công cụ lập trình

tương ứng. Thông thường công cụ lập trình được hiểu như là một tập hợp bao gồm:
+ Ngôn ngữ lập trình.
+ Môi trường lập trình.
+ Thư viện hỗ trợ lập trình.
Trong Microsoft Office hỗ trợ các công cụ lập trình:
+ VBA (Visual Basic For Application)
+ VSTO (Visual Studio Tools for Office)
2.1.2. Sử dụng Visual Basic cho ứng dụng
Mỗi công cụ lập trình luôn có những đặc điểm riêng và khó có thể phán xét cái
nào hay hơn hoặc kém hơn. Do đó, để lựa chọn được công cụ thích hợp khi lập trình
trên ứng dụng nền, cần dựa vào mục đích cụ thể. Trong lĩnh vực xử lý tự động ở văn
phòng, hầu hết các bài toán lớn và cơ bản đã được giải quyết, nhưng còn rất nhiều các
bài toán khác, tuy không lớn và không quá phức tạp, nhưng rất đa dạng và khó khái
quát, vẫn thiếu phần mềm thực hiện. Nên phạm vi ứng dụng của lập trình trên ứng
16
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
dụng nền là rất lớn và có tính hiệu quả cao. Với quy mô của các bài toán văn phòng
dạng này, thì việc lựa chọn VBA làm công cụ lập trình là rất phù hợp:
- Ngôn ngữ lập trình Visual Basic (VB) là một loại ngôn ngữ dễ sử dụng, có số
lượng người dùng đông đảo và tài liệu tham khảo rất phong phú, nên việc trao đổi kỹ
năng, tìm kiếm tài liệu và mã nguồn rất dễ dàng.
- Môi trường lập trình thân thiện, dễ dùng và đầy đủ, nên việc xây dựng ứng
dụng sẽ nhanh và không cần thêm công cụ lập trình nào khác.
- Trên tất cả các ứng dụng nền hỗ trợ VBA, giao diện lập trình là đồng nhất, do
đó người dùng có thể lập trình mở rộng trên nhiều ứng dụng nền một cách thuận lợi.
- Thư viện lập trình có rất nhiều và đa dạng cho nên người dùng có thể xây
dựng ứng dụng của mình nhanh và chuyên nghiệp.
- Tốc độ thực thi của chương trình nhanh.
- Khai thác được hầu hết các tính năng sẵn có của ứng dụng nền.

- Chương trình VBA có thể được nhúng trong tệp của ứng dụng nền (chẳng hạn
như tệp bảng tính của Microsoft Excel hay tệp văn bản của Microsoft Word) hoặc có thể
được lưu dưới dạng một dự án độc lập. Điều này giúp cho việc phân phối, chia sẻ mã
lệnh được thuận tiện.
2.1.3. Đặc điểm của Visual Basic cho ứng dụng
Từ những phân tích ở phần trên, có thể thấy rằng VBA là một công cụ lập trình
cho phép phát triển nhanh phần mềm và được tích hợp vào trong ứng dụng nền. Về
thực chất, VBA được xây dựng dựa trên kiến trúc COM, cho nên người dùng có thể sử
dụng các thành phần sẵn có của ứng dụng nền trong việc xây dựng chương trình của
mình bằng VBA.
Từ những macro ban đầu có thể tập hợp lại để xây dựng thành các dự án
chuyên biệt. Tài liệu này tuy không đi sâu về vấn đề xây dựng dự án, nhưng sẽ khái
quát để học viên nắm được vấn đề có thể tự phát triển theo từng mục tiêu sau này.
Một dự án được xây dựng bằng VBA dựa trên ứng dụng nền nào thì nó phụ
thuộc chặt chẽ vào ứng dụng nền đó, bởi theo mặc định, dự án VBA sẽ hoạt động và
sử dụng các thành phần trong chính ứng dụng nền đó. Điều này có nghĩa là rất khó có
thể chuyển đổi một dự án VBA từ loại ứng dụng nền này sang một ứng dụng nền khác
cũng như tạo ra một ứng dụng chạy độc lập.
Sự khác biệt cơ bản nhất của VBA trong các ứng dụng nền (ví dụ giữa VBA
trong AutoCAD và VBA trong Microsoft Excel) là cách thức sử dụng các thành phần
(đối tượng) của ứng dụng nền. Cho nên khi xây dựng ứng dụng bằng VBA, nên nắm
rõ mô hình đối tượng của ứng dụng nền và cách sử dụng chúng, có thể sử dụng macro
để phát sinh mã lệnh đối với các đối tượng.
2.1.4. Cấu trúc của một dự án Visual Basic cho ứng dụng
Một dự án VBA có cấu trúc tương tự như sau:
- Mô-đun chuẩn (Module): Nơi chứa các mã lệnh khai báo, các chương trình
con (hàm và thủ tục). Việc tạo ra các mô-đun chuẩn thường căn cứ theo các khối chức
năng được đặt ra khi xây dựng hệ thống.
17
Nguyễn Anh Cường 0988.529.310

Trung tâm Tin học ABC giữ bản quyền
- Mô-đun lớp (Class Module): Nơi chứa định nghĩa các lớp của dự án.
- Userform: Giao diện dạng hộp thoại giúp cho việc giao tiếp giữa người sử
dụng và chương trình được thuận tiện. Thông thường sử dụng Userform để nhập số
liệu, xuất kết quả của chương trình. Nhiều trường hợp, nếu việc nhập số liệu và xuất
kết quả được thực hiện trực tiếp trên ứng dụng nền thì không cần sử dụng Userform.
Những thành phần này là bộ khung để người dùng xây dựng chương trình, như
viết mã lệnh hay thiết kế giao diện cho chương trình. Mô-đun lớp và UserForm là hai
thành phần có thể có hoặc không tùy thuộc vào từng dự án và tất cả những thành phần
này đều được hiển thị trên cửa sổ Project Explore của giao diện VBA IDE.
Khi viết chương trình (mã lệnh) cụ thể thì cấu trúc của một chương trình
thường được coi là sự bố trí, sắp xếp các câu lệnh trong chương trình đó. Khái niệm
cấu trúc này phụ thuộc vào từng loại ngôn ngữ lập trình. Đối với ngôn ngữ lập trình
VB, thì cấu trúc chỉ tập trung vào chương trình con (hàm và thủ tục) mà không có một
quy định về cấu trúc nào đối với chương trình chính.
2.1.5. Trình tự xây dựng một dự án bằng Visual Basic cho ứng dụng
Về mặt trình tự thực hiện, việc xây dựng một dự án VBA bao gồm các bước sau:
B1. Xác định rõ nhu cầu xây dựng chương trình. Nhu cầu này được xác định
dựa trên hoạt động thực tế của người dùng và thường do chính người dùng đề xuất.
Đây là bước xác định các chức năng của chương trình.
B2. Xác định rõ mục tiêu mà chương trình cần đạt được, là phần cụ thể hóa của
bước 1, nếu như bước 1 có nhu cầu hoàn thiện nội dung mong muốn, thì bước 2 này sẽ
cụ thể mức độ hoàn thiện (đến đâu và như thế nào).
B3. Lựa chọn ứng dụng nền và công cụ lập trình phù hợp cho việc xây dựng
chương trình. Ví dụ với nhu yêu cầu tính liên quan đến thời gian, thì ứng dụng nền thích
hợp là VBA, hoặc trường của Microsoft Word. Tùy theo mức độ phức tạp của bài toán
mà lựa chọn công cụ lập trình phù hợp. Ở đây VBA đảm bảo sự thuận tiện trong việc xây
dựng các mô-đun tính toán đối với những bài toán liên quan đến thời gian thông thường.
B4. Thiết kế hệ thống cho chương trình (hay dự án): bao gồm việc lập sơ đồ
khối, xác định các mô-đun của chương trình, thiết kế giao diện nhập xuất dữ liệu và kết

quả, xây dựng hệ thống cơ sở dữ liệu sao cho thỏa mãn những đề xuất ở bước 1 và 2.
B5. COM (Component Object Model): là một kiến trúc lập trình được thiết kế
bởi Microsoft. Mục đích của công nghệ này là tạo ra một chuẩn công nghệ trong lập
trình, mà ở đó cho phép xây dựng chương trình theo mô hình lắp ghép hay sử dụng lại
các sản phẩm đã được hoàn thiện từ trước theo chuẩn COM.
B6. Viết mã lệnh (lập trình): là việc sử dụng công cụ lập trình để tạo ra chương
trình phù hợp với hệ thống đã được thiết kế ở bước 4.
B7. Kiểm thử chương trình: là công đoạn hoàn thiện và chuẩn bị đưa chương
trình vào sử dụng.
Những công việc chính của bước này bao gồm:
- Kiểm tra xem các chức năng của chương trình đã thỏa mãn các yêu cầu đề ra
từ trước chưa, bằng cách chạy thử tất cả các tính năng của chương trình dựa trên một
18
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền
kịch bản cụ thể.
- Kiểm tra hiệu năng của chương trình: xem thời gian thực hiện và quy trình sử
dụng chương trình có hợp lý không.
- Kiểm tra khả năng chịu lỗi của chương trình, như khi nhập số liệu sai. Một
chương trình đảm bảo khả năng chịu lỗi là nó sẽ không bị dừng lại đột ngột do lỗi thao
tác của người dùng hay dữ liệu sai.
B8. Đóng gói, đưa chương trình vào sử dụng: bao gồm việc xây dựng tài liệu
hướng dẫn cài đặt và sử dụng chương trình nhằm mục đích giúp người dùng có thể
triển khai chương trình vào thực tế.
B9. Tiếp nhận các góp ý, phản hồi của người dùng để bổ sung hay hoàn thiện
những khiếm khuyết của chương trình mà trong quá trình thiết kế hệ thống hay kiểm
thử đã bỏ qua hoặc chưa phát hiện được.
B10. Nâng cấp chương trình: sau một thời gian sử dụng, dựa trên những phản
hồi của người dùng, nếu thấy rằng chương trình cần bổ sung thêm những tính năng
mới thì người phát triển phần mềm sẽ thực hiện sự bổ sung này dựa trên những thành

phần đã có từ trước.
2.1.6. Môi trường phát triển tích hợp
Trong mỗi công cụ lập trình trên ứng dụng nền, luôn có một môi trường lập trình
nhằm hỗ trợ người dùng có thể xây dựng, thử nghiệm và hoàn thiện chương trình của
mình. Trong các phần mềm Office, khi sử dụng VBA, môi trường lập trình được gọi là
Môi trường phát triển tích hợp (VBA IDE). Trên tất cả các ứng dụng nền, VBA IDE có
cấu trúc và hoạt động tương đương nhau với giao diện cơ bản như hình 2.1ình 2.1 và
cách gọi giao diện VBA IDE từ ứng dụng nền như sau:
- Phím tắt: Từ giao diện chính của ứng dụng nền, nhấn tổ hợp phím Alt+F11.
- Menu: Nhấn Tools/Macro/Visual Basic Editor (hình 2.1ình 2.1 trang 19)
- Thanh trình đơn (Menu bar): chứa tất cả các lựa chọn cần thiết để thao tác với
VBA IDE
- Cửa sổ dự án (Project Explorer Window): liệt kê dưới dạng cây phân cấp các
dự án hiện đang được mở trong VBA IDE và các thành phần có trong từng dự án như
các tài liệu thành phần, các mô-đun chứa chương trình con, các mô-đun lớp, các cửa sổ
do người dùng tạo.
Việc thêm các thành phần mới vào trong một dự án được thực hiện trong menu
Insert của VBA IDE. Ví dụ muốn thêm một mô-đun chuẩn vào trong dự án, chọn
Insert/Module.
- Cửa sổ mã lệnh (Code Window): mỗi thành phần được liệt kê trong cửa sổ
dự án đều có một cửa sổ mã lệnh riêng, chứa mã lệnh cho thành phần đó. Người dùng
có thể hiệu chỉnh mã lệnh, tạo ra mã lệnh mới trong cửa sổ mã lệnh.
- Cửa sổ tra cứu đối tượng (Object Browser Window): hiển thị các lớp, phương
thức, thuộc tính, sự kiện và hằng số có trong thư viện đối tượng và trong dự án mà
người dùng vừa tạo.
- Có thể sử dụng cửa sổ này để tìm kiếm, tra cứu tất cả các đối tượng vừa tạo ra
Formatted: Condensed by 0,6 pt
19
Nguyễn Anh Cường 0988.529.310
Trung tâm Tin học ABC giữ bản quyền

cũng như các đối tượng trong các chương trình khác.

Hình 2.1. Giao diện chính của VBA IDE
- Cửa sổ đối tượng trực quan (Visual Object Window): khi người dùng tạo các
đối tượng trực quan thì cửa sổ này sẽ cho phép người dùng thao tác trên các điều khiển
một cách dễ dàng và thuận tiện.
- Hộp công cụ chứa điều khiển (Tool Box): chứa các thanh công cụ giúp người
dùng có thể chèn các điều khiển vào cửa sổ người dùng (UserForm).
- Cửa sổ thuộc tính (Properties Window): cửa sổ này liệt kê tất cả các thuộc
tính của đối tượng, qua đó người dùng có thể tham khảo và thay đổi các thuộc tính khi
cần như màu chữ, tên đối tượng…
2.2. Cơ bản về ngôn ngữ lập trình Visual Basic
2.2.1. Những qui định về cú pháp
Cú pháp được hiểu là một một tập hợp bao gồm các quy tắc, luật lệ về trật tự
và hình thức viết của một câu lệnh hay một cấu trúc lệnh.
Trong ngôn ngữ lập trình VB, cũng như các ngôn ngữ lập trình khác, đều có
những quy định về cú pháp cho việc viết mã lệnh và người lập trình cần phải tuân theo
Cửa sổ
dự án
Cửa sổ
mã lệnh
Cửa sổ
thuộc tình
Hộp
ToolBox
Cửa sổ
tra cứu đối
tƣợng

Đối tƣợng trực quan

Thanh thực đơn

×