1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xử lý tự động công nghệ thông tin trong văn phòng

310 619 1
Tài liệu đã được kiểm tra trùng lặp

Đ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 310
Dung lượng 6,57 MB

Nội dung

Tài liệu tham khảo công nghệ thông tin Xử lý tự động công nghệ thông tin trong văn phòng

Trang 1

Giáo trình 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,

nên phải chỉnh dữ liệu và máy tính về dạng Việt Pháptrước khi đọc tiếp giáo trình này, nhấn phím Ctrl và nháyvào đây để đọc cách chỉnh thuộc trang 7

Không thực hiện sửa chữa đè lên phần nội dung

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 và tiêu đề hình chuyển vịtrí mà chỉ chuyển phần chữ, do các hình đều đặtBookMark liên kết, nếu không đặt lại đúng sẽ bịlỗi hàng loạt.

Trang 2

XỬ LÝ TỰ ĐỘNG CÔNG NGHỆ THÔNG TINTRONG VĂN PHÒNG

HÀ NỘI - 2010

Trang 4

XỬ LÝ TỰ ĐỘNG CÔNG NGHỆ THÔNG TINTRONG VĂN PHÒNG

(Giáo trình dùng cho mọi đối tượng sử dụng máy vi tính của Học viện Phòng không - Không quân)

HÀ NỘI - 2010

Trang 5

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ânTrưởng Kỹ thuật Trung tâm Tin học ABC

Người sửa chữa, 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ộiTrang phục May sẵn Rẻ nhất Hà Nội

fthaoabc@yahoo.com0912.678.515

Trang 6

CHỮ VIẾT TẮT 5

LỜI NÓI ĐẦU 6

Chương 1: Hệ thống và cài đặt 7

1.1 Một số nội dung liên quan đến hệ thống 7

1.1.1 Điều chỉnh dữ liệu về dạng Việt Pháp 7

1.1.2 Biểu diễn dữ liệu ngày tháng trên trục thời gian 10

1.2 Cài đặt Microsoft Office 11

1.2.1 Nguyên tắc khi cài đặt Microsoft Office 11

1.2.2 Thực hiện cài đặt đầy đủ Microsoft Office 12

1.2.3 Thực hiện cài bổ sung 14

1.2.4 Chú ý khi sử dụng chương trình diệt Virus BKAV sau khi cài 15

Kết luận chương 1 16

Câu hỏi và bài tập chương 1 16

Chương 2: Ngôn ngữ Visual Basic cho ứng dụng 17

2.1 Tổng quan về Visual Basic For Application 17

2.1.1 Khái niệm 17

2.1.2 Sử dụng Visual Basic For Application 17

2.1.3 Đặc điểm của Visual Basic For Application 18

2.1.4 Trình tự xây dựng một dự án bằng Visual Basic For Application 18

2.1.5 Cấu trúc của một dự án Visual Basic For Application 19

2.1.6 Môi trường phát triển tích hợp 20

2.2 Cơ bản về ngôn ngữ lập trình Visual Basic 21

2.2.1 Những qui định về cú pháp 21

2.2.2 Các trợ giúp về cú pháp trong quá trình viết mã lệnh 22

2.2.3 Từ khoá trong VBA 24

2.2.4 Các kiểu dữ liệu cơ bản 25

2.2.5 Khai báo trong Visual Basic For Application 30

2.2.12 Khởi tạo các biến từ file *.ini 64

2.3 Khả năng mở rộng của các phần mềm trong bộ Microsoft Ofice 65

2.3.1 Macro 65

2.3.2 Hiệu chỉnh macro 73

2.3.3 Vấn đề an toàn khi sử dụng macro 73

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 74

Trang 7

2.4.1 Tùy biến đối với nút lệnh 74

2.4.2 Thiết lập phím tắt 78

2.4.3 Chèn các lời chú 79

Kết luận chương 2 80

Câu hỏi và bài tập chương 2 80

Chương 3: Các tệp lưu giữ tuỳ biến 81

3.1 Normal.dot trong WinWord 81

3.1.1 Công dụng, vị trí của Normal.dot 81

3.1.2 Một số chức năng tiêu biểu trong Normal.dot 82

3.1.3 Các tệp khởi động tương tự normal.dot 104

3.2 Personal.xls và các tệp hỗ trợ tuỳ biến trong Excel 105

3.2.1 Công dụng, vị trí 105

3.2.2 Add-in 106

Kết luận chương 3 107

Câu hỏi và bài tập chương 3 107

Chương 4: Các xử lý chuyên biệt trong WinWord 108

Câu hỏi và bài tập chương 4 151

Chương 5: Xử lý hỗn hợp trong WinWord 152

5.1 Xử lý tự động về nội dung ngay lúc gõ 152

Câu hỏi và bài tập chương 5 199

Chương 6: CÁC TRƯỜNG TRONG WORD 200

6.1 Căn bản về các trường của Microsoft Word 200

Trang 8

6.1.1 Chèn một trường của Word vào văn bản 200

6.1.2 Khoá chuyển 201

6.2 Những nguyên tắc cơ bản khi làm việc với trường Word 202

6.2.1 Lấy giá trị nhập vào từ người dùng 202

6.2.2 Đặt giá trị cho BookMark không thông qua người dùng 203

6.2.3 Chèn BookMark và kết quả tính toán ra văn bản 204

6.3 Tính toán các trường Word 209

6.3.1 Cú pháp về gõ công thức trong trường formular 209

6.3.2 Các toán tử số 209

6.3.3 Các toán tử so sánh 210

6.3.4 Các hàm 210

6.3.5 Tính toán trong các FormText 214

6.3.6 Tham chiếu vào các ô trong bảng 216

6.3.7 Kiểm tra hoặc trả về nội dung ô trong bảng 219

6.3.8 Tham chiếu nội dung của ô trong bảng từ ngoài bảng 219

6.3.9 Tham chiếu tính tổng hàng và tổng cột từ ngoài bảng 220

6.4 Làm việc với ngày tháng 221

6.4.1 Các loại ngày tháng 221

6.4.2 Định dạng ngày tháng 221

6.4.3 Tự động chèn một ngày quá khứ và tương lai 224

6.4.4 Tính toán qua lại giữa ngày trước và ngày sau 230

6.5 Làm việc với thời gian 235

6.5.1 Tính tổng của 2 giá trị thời gian 236

6.5.2 Tính hiệu của 2 giá trị thời gian 236

6.5.3 Chỉ định thời gian quá khứ hoặc tương lai 237

6.6 Điều khiển vị trí các ký tự thông qua hàm Advanced 239

6.6.1 Công dụng hàm Advanced 239

6.6.2 Cú pháp 240

6.7 Nối kết dữ liệu 240

6.7.1 Kỹ thuật nối kết Object Linking and Embedding 240

6.7.2 Kỹ thuật nối kết Dynamic Linking and Embedding 243

Kết luận chương 6 247

Câu hỏi và bài tập chương 6 248

Chương 7: Các thao tác trong môi trường Excel 249

7.1 Một số nội dung cần thống nhất trước khi làm việc với Excel 249

7.1.1 Tên và công dụng sơ lược của những yếu tố cơ bản trong Excel 249

Trang 9

7.2.4 Nhập công thức 259

7.2.5 Phần sơ cấp và phần thứ cấp của một ô 259

7.2.6 Định dạng theo điều kiện 263

7.3 Kiểm soát nhập dữ liệu 266

7.3.1 Yêu cầu nhập dữ liệu 266

7.3.2 Quy cách dữ liệu 267

7.3.3 Chỉ cho nhập dữ liệu vào những ô định trước 269

7.3.4 Không cho người dùng thực hiện một số công việc đối với bảng tính 270

7.3.5 Hiện và ẩn trong Excel 274

Kết luận chương 7 276

Câu hỏi và bài tập chương 7 276

Chương 8: Thiết lập các công thức cho các ô bị động 277

8.1 Điều khiển kiết xuất dữ liệu bị động Excel 277

8.1.1 Sự phụ thuộc giá trị của thứ cấp bị động 277

8.5 Thứ cấp bị động phụ thuộc vào nhiều ô 296

8.5.1 Các ô không liên quan đến nhau 296

8.5.2 Các ô có liên quan với nhau 296

8.6 Xử lý phân nhánh lớn 297

8.6.1 Đặt vấn đề 297

8.6.2 Sử dụng hàm phân nhánh lớn 297

Kết luận chương 8 299

Câu hỏi và bài tập chương 8 299

TÀI LIỆU THAM KHẢO 300

Trang 10

DDE Dynamic Linking and EmbeddingIDE Integrated Development EnviromentOLE Object Linking and Embedding

Trang 11

LỜI NÓI ĐẦU

Nhu cầu ứng dụng công nghệ thông tin trong học tập, nghiên cứu và giảng dạycủa Học viện luôn rất lớn Việc sử dụng CNTT trong công tác văn phòng là việc làmthường xuyên, nhưng cách thức làm việc để đáp ứng yêu cầu nhanh chóng, hiệu quả,chính xác còn rất bất cập và nhiều hạn chế, cần được định hướng, đi sâu, nghiên cứu đểkhai thác hiệu quả, đặc biệt là lĩnh vực xử lý tự động Để đáp ứng kịp thời nhu cầu đó, giáo

trình “Xử lý tự động công nghệ thông tin trong văn phòng” được biên soạn để phục vụ

nhiệm vụ đào tạo đội ngũ nhân lực công nghệ thông tin, đồng thời làm tài liệu tham khảocho mọi đối tượng giúp cho việc nắm rõ bản chất của vấn đề cần xử lý, tạo tiền đề xâydự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 công nghệ thông tin trong văn phòng” được biên soạn

dựa trên cơ sở tổng hợp, thống nhất nội dung của những tài liệu dịch nguyên bản từ tiếngAnh, 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 Internetvà 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ênquan đến xử lý tự động văn phòng Microsoft Word, Microsoft Excel và kết nối, liên kếtdữ liệu, ở version 2003, 2007 về sau đã và đang sử dụng trong Học viện, phù hợp với yêucầu nội dung, chương trình đào tạo nhân lực công nghệ thông tin.

Bố cục của tài liệu gồm 8 chương:- Chương 1: Hệ thống và cài đặt;

- Chương 2: Ngôn ngữ Visual Basic cho ứng dụng;- Chương 3: Các tệp lưu giữ tuỳ biến;

- Chương 4: Các xử lý chuyên biệt trong Word;- Chương 5: Xử lý hỗn hợp trong Word;- Chương 6: Các trường trong Word;

- Chương 7: Các thao tác trong môi trường Excel;

- Chương 8: Thiết lập các công thức cho các ô bị động Excel.

Tài liệu dùng cho các lớp đào tạo nhân lực công nghệ thông tin với những họcviên đã sử dụng công nghệ thông tin trong công tác văn phòng; phục vụ cho dự án củaHọ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 làm luậnán tốt nghiệp và cán bộ đang thực hiện làm những chuyên đề, giáo trình, tài liệu.

Tài liệu được biên soạn lần đầu tiên, chắc chắn sẽ không tránh khỏi những sai sót, rấtmong nhận được sự đóng góp ý kiến của bạn đọc để lần tái bản sau được hoàn chỉnh hơn.

Xin trân trọng cảm ơn!

Tác giả

Trang 12

Chương 1:

Hệ thống và cài đặt

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ệncà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 đượcthự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ữngvấ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éptận dụng được mọi khả năng của Microsoft Office đồng thời nắm rõ phần mềm BáchKhoa AntiVirus để tránh không làm hỏng các macro.

1.1 Một số nội dung liên quan đến 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ếukhô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ũngkhô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.

B0 Vào Control Panel (Start/Control Panel)

B1 Vào Regional And Language Options, hộp thoại hiện ra (hình 1.1 trang8) 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.2 đến hình 1.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 giúp.

Trang 13

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

Trang 14

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

Trang 15

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

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ếtthú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ập2 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 điền là năm 1930,máy tính khác điền là năm 2030 Trên hình 1.5 trang 10 phần Calendar có thể điềuchỉnh được khoảng thời gian quy định này để máy tính tự nhập đúng với ý định Mỗimột thời điểm (ngày) là 1 điểm trên trục thời gian.

- Theo quy định thì những ngày đứng sau (ngày d2) được coi là lớn hơn ngày

Trang 16

đứng trước (ngày d1) Nên khi lấy ngày d2 trừ ngày d1 sẽ được số ngày Tương tự lầyngày d1 cộng với số ngày sẽ được ngày d2.

- 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

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ămnhuận nên có thêm chỉ số,25) nên muốn tính số năm (ny) từ số ngày (nd) thì có thể sửdụng công thức:

Trong đó d2 là ngày sau, d1 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 (trongExcel) hoặc phép tính MOD trong VBA.

Trong Excel sẽ viết theo hàm:

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ì các lựa chọn sẽ thiếu, nên không phục vụ được cho xử lý tựđộng được.

Khi có các lỗi xảy ra, như hiện các thông báo “Compile error in HiddenModule” phải thực hiện 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 virus BKAV(nếu sử dụng phần mềm diệt virus này).

Trang 17

1.2.2 Thực hiện 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 cài đặt nào, cho đến khichọn cài đặt, 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ồncà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ì khicà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 Phải chọn Custom để cài đặt đầy đủ

Trang 18

Hình 1.10 Phải 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.

Trang 19

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ềmbất kỳ của Microsoft Office, ví dụ trường hợp WinWord:

Hình 1.14 Báo lỗi module ẩn, do không cài đặt đầy đủ Microsoft Office, (tấtcả có bao nhiêu module trong normal.dot sẽ hiện từng đấy 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 Thực hiện cài bổ sung

Bằng cách chạy lại tệp cài đặt bộ OFFICE (setup.exe), đến khi hiện hộp thoạithì 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 trang 13.

Nếu cài đặt bổ sung Full như trên, nhưng vẫn báo lỗi “Compile error inHidden Module” là do những thư viện bổ sung vào còn chưa cập nhật, do lần cài đặt

Trang 20

trước chưa đầy đủ, thực hiện cập nhật các thư viện này bằng tay trong MicrosoftOffice (Ví dụ WinWord) 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 trang 15.

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 diệt Virus BKAV sau khi cài

Hình 1.17 Nếu không cản thận, BKAV là chương trình phá hỏng mọi

Trang 21

chức năng xử lý tự động, khi chọn “Xoá tất cả Macro”

Trong quá trình xử lý tự động, làm việc chủ yếu với các macro Các macro nàyvớ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ệtvirus Bách khoa AntiVirus (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ôngphân biệt được virus với macro Cho nên để tránh những sai lầm đáng tiếc, giáo trìnhkhuyế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 1

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ươngnà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ắcquy đị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ý đốivớ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ớicá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 và bài tập chương 1

0 Đị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?

1 Khi nhập giá trị 1000 vào 1 ô trong Excel có 3 cách nhập, chọn cách đúngnhất, giải thích tại sao?

Trang 22

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ềmngoà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 MicrosoftOffice 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ảitiế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 choviệc khai thác sử dụng được linh hoạt mang lại những kết quả ấn tượng và nhanhchóng Chương này giới thiệu những kiến thức cơ bản về Visual Basic ForApplication 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 For Application

2.1.1 Khái niệm

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 trongnó 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à ngườithiết kế phần mềm không thể dự kiến trước được Khi người dùng xây dựng nhữngchươ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ậndụ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 đượcnhanh 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ọichú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ềntrong tin học văn phòng là Word và Excel, ngoài việc phù hợp với định dạng tài liệutrong 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ácchương trình chạy cùng với mục đích 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íchhợ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ựcchấ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ìnhtươ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 For Application

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áinào hay hơn hoặc kém hơn một cách tổng quát Do đó, để lựa chọn được công cụ lậptrình 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ể Tronglĩnh vực xử lý tự động công tác văn phòng, hầu hết các bài toán lớn và cơ bản đã đượcgiả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

Trang 23

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 dụng nền là rất lớn và có tính hiệu quả cao Với quymô của các bài toán 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, 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 ứngdụ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ợ Visual Basic For Application (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âydự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ạnnhư tệp bảng tính của Excel hay tệp văn bản của Word) hoặc có thể được lưu dưới dạngmộ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 For Application

Từ các đặc điểm cơ bản đã được phân tích các phần trên, có thể thấy rằngVBA 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ợpvà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ệcxây dựng chương trình của mình với VBA.

Từ những macro ban đầu có thể tập hợp lại để xây dựng thành các dự ánchuyê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áiquá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áccũ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 VBAtrong AutoCAD và VBA trong Excel) là cách thức sử dụng các thành phần (đốitượ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átsinh mã lệnh đối với các đối tượng.

2.1.4 Trình tự xây dựng một dự án bằng Visual Basic For Application

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ướcsau:

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

Trang 24

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óacủ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 2nà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ựngchươ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íchhợp là VBA, hoặc trường của Word Tùy theo mức độ phức tạp của bài toán mà lựachọ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ựngcá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ậptrì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ạicá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ươngtrì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ươngtrì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 đề ratừ 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ộtkị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ộtchươ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 thaotá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ệuhướ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ệnnhững khiếm khuyết của chương trình mà trong quá trình thiết kế hệ thống hay kiểmthử đã 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ảnhồ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ăngmớ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ànhphần đã có từ trước.

Trang 25

2.1.5 Cấu trúc của một dự án Visual Basic For Application

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ìnhcon (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ứcnăng được đặt ra khi xây dựng hệ thống.

- 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 Trong 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ụngUserform.

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à haithà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ầnnày đều được hiển thị trên cửa sổ Project Explore của giao diện của 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ìnhthườ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ệmcấ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ìnhVisual Basic (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.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ậptrì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ìnhcủa mình Trong các phần mềm Office, khi sử dụng VBA để lập trình, 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 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 trang 21)

- 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ớiVBA IDE

- Cửa sổ dự án (Project Explorer Window): liệt kê dưới dạng cây phân cấp cácdự á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ửasổ 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 menuInsert của VBA IDE Ví dụ muốn thêm một mô-đun chuẩn vào trong dự án, chọn

- 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ùngcó thể hiệu chỉnh mã lệnh, tạo ra mã lệnh mới trong cửa sổ mã lệnh.

Trang 26

- Cửa sổ tra cứu đối tượng (Object Browser Window): hiển thị các lớp, phươngthứ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.

Hình 2.1 Giao diện chính của VBA IDE

- 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 racũng như các đối tượng trong các chương trình khác.

- 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ểnmộ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ườidù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ộctí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 khicầ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ử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

Trang 27

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 Visual Basic (VB), cũng như các ngôn ngữ lập trìnhkhá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ầnphải tuân theo các quy tắc này để trình biên dịch có thể dịch mã lệnh mà không phátsinh lỗi Sau đây là các quy định cơ bản về cú pháp của VB:

- Các câu lệnh phải là các dòng riêng biệt Nếu có nhiều lệnh trên cùng mộtdòng thì giữa các lệnh ngăn cách nhau bằng dấu hai chấm (:) Nếu dòng lệnh quá dài,muốn ngắt lệnh thành hai dòng thì sử dựng dấu cách và dấu gạch dưới (_).

- Nếu muốn chèn thêm ghi chú, phải bắt đầu dòng chú thích bằng dấu nháy đơn (’).- Qui ước khi đặt tên: phải bắt đầu bằng kí tự kiểu chữ cái thông thường; khôngchứa dấu chấm, dấu cách hay các ký tự đặc biệt khác; không quá 255 kí tự; không trùngvới các từ khoá; các biến có cùng một phạm vi thì không được đặt tên trùng nhau.

2.2.2 Các trợ giúp về cú pháp trong quá trình viết mã lệnh

Các quy tắc về cú pháp thường khó nhớ đối với những người mới học lập trìnhhay mới sử dụng ngôn ngữ lập trình mới, cho nên, để thuận tiện cho người lập trình,VBA IDE cung cấp tính năng tự động phát hiện lỗi cú pháp trong quá trình viết mãlệnh Tuy nhiên việc kiểm tra tự động này có thể gây khó chịu cho những lập trìnhviên chuyên nghiệp, những người rất hiếm khi mắc lỗi cú pháp khi lập trình, cho nênchức năng này chỉ hoạt động khi được kích hoạt (hình 2.2 trang 22), cách làm nhưsau:

Chọn Tools/Options/Editor/Code Settings

Hình 2.2 Bật/Tắt trợ giúp phát hiện lỗi cú pháp của VBA IDE

Trang 28

Hình 2.3 VBA IDE tự động kiểm tra lỗi cú pháp và thông báo cho người dùng lỗi đó

Ý nghĩa của các tùy chọn đáng lưu ý là:

- Tự động kiểm tra lỗi cú pháp (Auto Systax Check): Tùy chọn này cho phép

VBA IDE tự động phát hiện lỗi cú pháp ngay sau khi người dùng kết thúc dòng lệnh(xuống dòng mới), một hộp thoại thông báo vị trí gây lỗi cũng như nguyên nhân gâylỗi Nếu người dùng bỏ qua không sửa ngay thì dòng lệnh có lỗi sẽ được đánh dấu.

- Kiểm tra các biến (Require Variable Declaration): Trong VB, người dùng

có thể sử dụng một biến mà không cần khai báo Trong trường hợp này biến sẽ đượckhởi tạo và nhận một giá trị mặc định Tuy nhiên, nếu lạm dụng điều này, rất có thể sẽlàm cho chương trình khó quản lý và dễ nhầm lẫn, vì thế VBA IDE cung cấp tùy chọnnày để cho phép người dùng thiết lập tính năng kiểm soát quá trình khai báo biến Khitùy chọn này được kích hoạt, tất cả các biến đều phải khai báo trước khi sử dụng vàVBA IDE sẽ tự động thêm vào đầu của mỗi mô-đun dòng lệnh “Option Explicit”.

Hình 2.4 VBA IDE tự động thông báo lỗi khi biến được sử dụng mà chưa khai báo

Trang 29

Hình 2.5 Danh sách các thành phần được tự động hiển thị.

Mã lệnh, thông thường là một tập hợp bao gồm các từ khóa, câu lệnh, tên biếnhay toán tử được sắp xếp theo một trật tự nhất định Tên của các thành phần này có thểkhó nhớ chính xác hoặc quá dài, cho nên VBA IDE đưa ra tính năng này bằng cáchhiển thị những thành phần có thể phù hợp với vị trí dòng lệnh đang soạn thảo trongmột danh sách và sẽ tự động điền vào chương trình theo lựa chọn của người dùng(bấm phím Tab) Để kích hoạt tính năng này thực hiện:

- Tự động hiển thị danh sách các thành phần của đối tượng (Auto List Member):Với tùy chọn này, khi một đối tượng của ứng dụng nền hay của chương trình được gọira để sử dụng thì một danh sách các thành phần của nó (bao gồm các phương thức vàthuộc tính) sẽ được tự động hiển thị để người dùng chọn, sau khi bấm phím Tab, tên củathành phần này sẽ được tự động điền vào vị trí thích hợp trong dòng lệnh.

- Tự động hiển thị cú pháp cho chương trình con (Auto Quick Info): Với tùychọn này, VBA IDE sẽ hiển thị những thông tin về tham số của một hàm hay thủ tục(đã được xây dựng từ trước) khi người dùng sử dụng nó Các thông tin này bao gồmtên của tham số cùng với kiểu của nó.

Hình 2.6 Tự động hiển thị thông tin của các tham số trong chương trình congiúp kiểm soát được việc lập trình

- Tự động hiển thị giá trị của biến (Auto Data Tips): Với tùy chọn này, trongchế độ gỡ lỗi (Break mode), giá trị của biến (được gán trong quá trình chạy củachương trình) sẽ được hiển thị khi người dùng đặt chuột tại vị trí biến.

Ngoài ra, nếu những tính năng trợ giúp trên chưa được kích hoạt, trong quátrình viết mã lệnh, người dùng có thể kích hoạt tạm thời chúng bằng cách nhấn tổ hợp

phím Ctrl – Space Cần chú ý rằng, khi danh sách trợ giúp hiện ra, người dùng có thể

sử dụng chuột hoặc phím mũi tên để lựa chọn mục cần sử dụng trong danh sách đó rồi

bấm phím Tab để xác nhận.

2.2.3 Từ khoá trong VBA

Từ khoá là tập hợp các từ cấu thành một ngôn ngữ lập trình Mỗi ngônngữ lập trình đều có một bộ từ khoá riêng, dưới đây là danh sách các từ khoátrong ngôn ngữ lập trình VBA:

Trang 30

Các từ khóa là những từ được dùng riêng cho những chức năng khác nhautrong ngôn ngữ lập trình, ví dụ từ khóa “Private” hạn chế phạm vi sử dụng của biến haychương trình con Nên việc đặt tên (biến, chương trình con) bắt buộc phải khác so vớicác từ khóa, nếu không sẽ phát sinh lỗi cú pháp.

Hình 2.7 VBA IDE báo lỗi do tên biến trùng tên với từ khóa

2.2.4 Các kiểu dữ liệu cơ bản

Khi một chương trình vận hành, nó sẽ tác động và làm thay đổi giá trị của mộtvài thông số trong chương trình.

VD 2: Trong chương trình giải phương trình bậc 2, các thành phần trongphương trình: y=ax2+bx+c sẽ cần thay đổi giá trị khi chương trình hoạt động Như

vậy giá trị của các thông số này có nhu cầu thay đổi trong những lần hoạt động khác

nhau của chương trình cũng như trong một lần hoạt động nào đó, ví dụ giá trị của y sẽthay đổi khi thay đổi giá trị của a trong phương trình trên Chính bởi nhu cầu thay đổi

giá trị này mà có khái niệm “biến” để mô tả sự “động” của những thông số này Với

mỗi biến, giá trị của nó luôn được quy định là phải thuộc một kiểu dữ liệu nào đó, vídụ giá trị của y trong phương trình trên phải là kiểu số thực Do ngôn ngữ lập trình

được thiết kế để thực hiện nhiều nhiệm vụ khác nhau cho nên trong ngôn ngữ lập trìnhnào cũng luôn có nhiều kiểu dữ liệu để thích ứng với nhu cầu đa dạng của việc lậptrình.

Kiểu dữ liệu là loại giá trị mà một biến có thể nhận, nói cách khác, khi mộtbiến được khai báo thì buộc phải gán cho nó một kiểu dữ liệu nhất định Về tổng thểcó thể chia các kiểu dữ liệu trong VB ra làm hai loại:

- Các kiểu dữ liệu được định nghĩa sẵn trong VB: là những kiểu dữ liệu cơ bảnvà thường gặp như kiểu số thực (Double), số nguyên (Integer), Chuỗi (String)

- Các kiểu dữ liệu do người dùng tự định nghĩa: là kiểu dữ liệu được tự xâydựng dựa trên những thành phần dữ liệu cơ bản trong VB Cách xây dựng kiểu dữ liệunày được đề cập sơ lược trong phần dưới.

Trang 31

a) Kiểu logic (boolean)

Chỉ chứa hai giá trị TRUE và FALSE (đúng và sai) Khi chuyển từ các dữ liệudạng số sang kiểu logic, 0 sẽ được chuyển thành FALSE còn giá trị khác sẽ đượcchuyển thành TRUE Khi chuyển từ kiểu logic sang kiểu số, giá trị FALSE sẽ đượcchuyển thành 0 còn giá trị TRUE sẽ được chuyển thành -1.

‘Khai báo biến A là kiểu logicDim A As Boolean

Biến A lúc này chỉ có thể nhận cặp giá trị: True hay False.

b) Kiểu số nguyên

Dùng để chứa các giá trị là số nguyên và có vài loại dữ liệu kiểu này Sự khácnhau của những loại dữ liệu này là giới hạn giá trị (lớn nhất và nhỏ nhất) mà biến cóthể nhận được.

Bảng 2.2 Giá trị của các kiểu số nguyênKiểu số nguyênKích

-Currency 8 bytes Từ -922,337,203,685,477.5808 đến 922,337,203,685,477.5807

Dim Matrix_1(10) As Double

Mảng Matrix_1 trên có 11 phần tử liên tục được Đánh số từ 0 đến 10 (ma trận

có 1 hàng và 11 cột) Khi sử dụng chỉ việc gọi phần tử cần dùng theo chỉ số tương ứng.

Trang 32

‘Gán giá trị 100 cho phần tử thứ 2Matrix_1(1)=100

‘Gán giá trị 100 cho phần tử cuối cùngMatrix_1(10)=100

Có thể cố định phạm vi chỉ số của mảng bằng cách khai báo như sau:‘Khai báo mảng

Dim Matrix_2(1 To 10) As Double

Lúc này chỉ số của mảng Matrix_2 sẽ bắt đầu từ 1 và mảng này có 10 phần tử.‘Gán giá trị 200 cho phần tử thứ 2

Dim Matrix_3(1 To 3, 1 To 5) As Double

‘Gán giá trị 100 cho phần tử tại hàng thứ 2 cột thứ 3Matrix_3(2,3)=100

Trong VB, mảng có thể có một chiều hoặc nhiều chiều, kích thước của mảngđược xác định dựa trên số chiều và biên trên, biên dưới của mỗi chiều Các thành phầntrong mảng là liên tục giữa hai biên.

Trong các ví dụ trên, các mảng có kích thước (hay số lượng phần tử) là khôngthay đổi trong suốt quá trình hoạt động của chương trình Loại mảng này được gọi là

mảng tĩnh và thường được dùng cho những bài toán biết trước số phần tử của mảng

hay kích thước mảng không lớn Ngoài loại mảng tĩnh này, trong VB còn cho phépđịnh nghĩa một loại mảng khác mà kích thước (hay số lượng phần tử) của nó có thểthiết lập lại ngay trong lúc chương trình đang hoạt động, loại mảng này được gọi là

mảng động Với mảng động, người lập trình không cần biết số phần tử của mảng trong

lúc lập trình, số phần tử này sẽ được thiết lập trong quá trình chương trình hoạt độngdựa theo nhu cầu của từng bài toán cụ thể.

Khi một mảng động, mà các phần tử của nó đã được gán giá trị, cần thay đổikích thước, sẽ có hai tình huống cần xét đến:

- Toàn bộ giá trị ban đầu (trước lúc thay đổi kích thước mảng) sẽ bị hủy bỏ, cácphần tử mảng mới (sau khi thay đổi kích thước) sẽ nhận giá trị mặc định.

‘Khai báo mảng A là mảng độngDim A() As Long

‘Xác định kích thước cho mảng động A: mảng 1 chiều có 5 phần tửRedim A(1 to 5) As Long

‘Gán giá trị cho phần tử của mảng AA(1) = 100: A(2) = 200

‘Định lại kích thước cho mảng A: mảng hai chiều với 3x3=9 phần tửRedim A(1 to 3, 2 to 4) as Long

Sau dòng cuối cùng này, toàn bộ giá trị của mảng A cũ (có A[1]=100 vàA[2]=200) sẽ bị xóa bỏ và tất cả các phần tử mới của mảng A (9 phần tử) sẽ nhận giátrị mặc định (thường được gán bằng 0).

- Giá trị cũ của các phần tử mảng sẽ được giữ lại khi cả hai điều kiện sau thỏamãn:

Trang 33

- Sử dụng lệnh ReDim với từ khóa Preserve.

- Sự thay đổi kích thước mảng chỉ được thực hiện ở biên trên của chiều cuốicùng của mảng, nghĩa là các phần tử cần giữ lại giá trị có chỉ số không đổi ngay cả khimảng được định lại kích thước.

VD 4:

‘Khai báo mảng động ADim A() As Long

‘Gán kích thước cho mảng AReDim A(1 To 3, 1 To 3) As Long‘Gán giá trị cho phàn tử của mảng AA(1,1) = 100: A(1,2) = 200A(2,1) = 150: A(2,2) = 250

‘Định lại kích thước cho mảng A, giữ lại giá trị ban đầu‘của các phần tử, lưu ý đến phạm vi của mảng mớiReDim Preserve A(1 To 3, 1 To 5) As Long

Trong VD 4, các phần tử của mảng A được giữ lại giá trị sau khi kích thướccủa mảng được thay đổi lại Lưu ý, chỉ có thể giữ lại giá trị của mảng ban đầu khi sựmở rộng được thực hiện ra biên cuối cùng của nó.

e) Kiểu chuỗi (String)

Chuỗi là một hàng bao gồm các ký tự liên tục nhau, các ký tự ở đây rất đadạng: Có thể là chữ số, chữ cái, dấu cách (space), ký hiệu Số lượng ký tự trong mộtchuỗi là rất lớn (216 ký tự) Mặc định trong VB, các biến hay tham số kiểu chuỗi cóchiều dài thay đổi tùy theo giá trị dữ liệu được gán cho nó.

Dim S As String

S=”ABCD 1234 @#$%”

Để tạo điều kiện thuận lợi cho người dùng, bên trong VB có sẵn một số hàmliên quan đến xử lý chuỗi, ví dụ như cắt chuỗi, tách chuỗi, ghép chuỗi, tìm kiếm, …Các hàm cơ bản này có thể tra cứu toàn bộ các hàm liên quan trong MSDN (MicrosoftDeveloper Network) hoặc Object Browser (thư viện Strings) bằng cách nhấn phím F2trong giao diện lập trình VBA IDE.

Trang 34

Hình 2.8 Thông tin về các hàm trong thư viện lập trình của VBA được hiển thịtrong Object Browser

f) Kiểu thời gian (Date)

Dùng để lưu trữ và thao tác trên các giá trị thời gian (ngày và giờ) Định dạngngày và giờ phụ thuộc vào các thiết lập về hiển thị trong hệ thống Khi chuyển từ cácdữ liệu kiểu số sang kiểu ngày tháng, các giá trị ở bên trái dấu phẩy chuyển thành thôngtin về ngày còn giá trị ở bên phải dấu phẩy sẽ được chuyển thành thông tin về giờ.

VD 5:Dim D As DateDim S As StringD = Now()

S = “Ngay: “ & Day(D) & “ - Thang: “ & Month(D) & “ - Nam: “ & Year(D)Debug.Print (S)

VD5 sẽ hiển thị thông tin về thời gian (ngày – tháng – năm) trong cửa sổImmediate của VBA IDE.

g) Kiểu Variant

Kiểu Variant là một kiểu dữ liệu đặc biệt có thể chứa tất cả các loại dữ liệu,ngoại trừ kiểu chuỗi có chiều dài cố định Kiểu Variant cũng có thể chứa các giá trị đặcbiệt như Empty, Error, Nothing và Null.

Tuy kiểu dữ liệu Variant có vẻ tiện dụng nhưng khi sử dụng một cách quá thoảimái thì nguy cơ gây lỗi của loại biến này là rất lớn, đặc biệt khi thao tác với các toán tử.

‘Gán biến V với giá trị kiểu logicV = True

Trang 35

‘Gán biến V với một dữ liệu kiểu thời gianV = #01/06/2007#

Sử dụng hàm VarType(vVariant) sẽ cho ra mã của kiểu dữ liệu hiện đang lưutrữ trong biến Variant.

Bảng 2.4 Giá trị trả về và ý nghĩa

1vbNull Không có dữ liệu hợp lệ trong variant

h) Kiểu tự định nghĩa (user-defined type)

Kiểu tự định nghĩa là kiểu dữ liệu do người dùng định nghĩa, tương tự như kiểubản ghi (Record) trong ngôn ngữ lập trình Pascal hay kiểu cấu trúc (Struct) trong ngônngữ lập trình C Kiểu tự định nghĩa bao gồm nhiều trường dữ liệu, mỗi trường dữ liệucó thể là các kiểu dữ liệu cơ bản hoặc các kiểu tự định nghĩa khác.

i) Kiểu lớp (Class)

Kiểu lớp (Class) là một mở rộng của kiểu dữ liệu tự định nghĩa, sự khác biệt cơbản ở đây là trong kiểu lớp còn có những đoạn chương trình dùng để xử lý chínhnhững dữ liệu trong nó Dữ liệu bên trong lớp thường được gọi là các thuộc tính(Properties), còn những đoạn chương trình trong lớp để xử lý dữ liệu này thực chất làcác Hàm/Thủ tục (Function/Sub) được định nghĩa bên trong lớp và thường được gọi làcác Phương thức (Methods) Một biến có kiểu dữ liệu là lớp được gọi là một đối tượng(Object) và cách sử dụng các Properties, Methods của đối tượng này tương tự nhưcách sử dụng các thành phần của kiểu dữ liệu tự định nghĩa.

Lớp cần được xây dựng trong Class Module hoặc có thể sử dụng lại các lớpsẵn có từ các thư viện lập trình.

Như vậy lớp có thể gồm các thành phần sau:

- Các thuộc tính (Property): là các dữ liệu mô tả trạng thái của bản thân đốitượng hoặc các quan hệ của nó với các đối tượng khác.Về bản chất, thuộc tính là cácbiến được khai báo trong lớp đó Kiểu dữ liệu của các thuộc tính có thể là các kiểu dữliệu cơ bản hoặc có thể là một lớp khác (kiểu Class).

- Các phương thức (Method): mô tả hành vi, chức năng của đối tượng Về bảnchất, phương thức là các chương trình con được xây dựng bên trong lớp và chúng cónhiệm vụ xử lý các dữ liệu của chính lớp đó.

- Các sự kiện (Event): Sự kiện giúp cho lớp có khả năng giao tiếp với các lớpkhác hoặc với môi trường ngoài Thường dùng để xử lý khi có tác động lên đối tượng.Sự kiện, về bản chất là một chương trình con dạng Sub và được tự động gọi ra tương

Trang 36

ứng với tác động nào đó lên đối tượng ví dụ như TextBox, thì có các sự kiện như bấm

phím hay thay đổi nội dung.

Trong khuôn khổ của giáo trình này, các vấn đề liên quan đến xây dựng lớp sẽkhông được đề cập chi tiết.

2.2.5 Khai báo trong Visual Basic For Application

Trong VBA, muốn sử dụng một biến có thể không cần khai báo, tuy nhiêncách làm này chỉ nên dùng khi viết các chương trình nhỏ, còn đối với các chương trìnhlớn, có nhiều mô-đun, thì nên bắt buộc khai báo biến trước khi sử dụng (theo cách thiếtlập ở mục 2 của chương này).

Khai báo biến, về thực chất, chính là việc tạo mã lệnh (lập trình) cho nên cácđoạn mã lệnh khai báo biến có thể đặt ở bất cứ thành phần nào trong dự án VBA (mô-đun chuẩn, mô-đun lớp, và Userform) Tùy theo nhu cầu sử dụng biến để giới hạnphạm vi sử dụng của biến đó sao cho việc lập trình được thuận tiện nhất dựa trênnhững nguyên tắc sau:

- Khi biến khai báo trong chương trình con nào thì phạm vi sử dụng của nó

được giới hạn trong chính chương trình con đó Biến loại này được gọi là biến cục bộ.

- Sử dụng từ khóa Public để xác định phạm vi sử dụng biến là trong toàn bộ dự

án, nghĩa là từ bất cứ nơi đâu trong dự án (mô-đun chuẩn, mô-đun lớp, và Userform)

đều có thể sử dụng biến này Biến được khai báo với từ khóa Public thường được gọi là

biến toàn cục Trong mô-đun nào đó, nếu một biến được khai báo với từ khóa Dim, thì

mặc định, biến đó là biến cục bộ, nghĩa là tương đương với việc sử dụng từ khóa

Chú ý: Không sử dụng các từ khoá Public, Private hay Friend cho khai báo

dữ liệu nằm bên trong chương trình con.

Ở mức độ rộng hơn, có thể coi biến như một khối dữ liệu của chương trình vàmức độ toàn cục được chia làm hai loại như sau:

- Toàn cục ở mức ứng dụng: Trong trường hợp ứng dụng gồm nhiều dự án

(multiprojects), nếu trong một mô-đun không có khai báo lựa chọn Option PrivateModule thì tất cả các thành phần dữ liệu hay chương trình được khai báo Public trong

mô-đun đó có phạm vi hoạt động toàn bộ ứng dụng – nghĩa là chúng còn có thể đượctham chiếu từ những dự án khác trong ứng dụng.

- Toàn cục ở mức dự án: Trong trường hợp ứng dụng gồm nhiều dự án

(multi-projects), nếu trong một mô-đun có khai báo lựa chọn Option Private Module thì tấtcả các thành phần dữ liệu hay chương trình được khai báo Public trong mô-đun đó chỉ

có phạm vi hoạt động trong nội bộ dự án chứa mô-đun mà không thể được tham chiếutừ những dự án khác trong ứng dụng.

- Sử dụng từ khóa Private để xác định phạm vi hoạt động của biến là trong nội

bộ của mô-đun đó, tất cả các chương trình con hay bất cứ thành phần nào của mô-đunnày đều có thể sử dụng biến loại này nhưng chúng không thể truy cập được từ nhữngmô-đun hay Userform khác trong dự án.

Khi khai báo kiểu dữ liệu người dùng tự định nghĩa hoặc các chương trình con

Trang 37

trong một mô-đun, nếu không chỉ rõ phạm vi hoạt động thì pham vi hoạt động mặc

định là Public.

Để tránh các nhầm lẫn do không nhớ phạm vi hoạt động mặc định, người dùngnên chỉ rõ phạm vi hoạt động của chương trình hay dữ liệu ngay khi khai báo.

- Ngoài ra, trong các mô-đun lớp (Class Module) hoặc mô-đun lệnh của

UserForm còn có thể sử dụng từ khóa Friend để xác định phạm vi hoạt động của một

chương trình con (phương thức) Khi sử dụng từ khóa này, chương trình con có thểđược truy xuất từ mọi nơi trong nội bộ dự án (Project) chứa nó, nhưng không thể được

truy xuất trong những dự án khác của ứng dụng (khác với khi dùng từ khóa Public –

chương trình con có thể được truy xuất từ mọi nơi của ứng dụng).

Các khai báo dữ liệu với các từ khoá trên được thực hiện trong phần General

của một môđun.

Các dữ liệu đó còn được gọi là dữ liệu cấp mô-đun (module level).

Trong mỗi mô-đun, phần đầu tiên (của phần viết mã lệnh) được gọi là phầnGeneral của mô-đun đó Theo quy ước, các thiết lập cho mô-đun được đặt ở đây vàVBA IDE sẽ tự động phân cách phần này bằng một đường chấm mờ Không có giớihạn về kích thước cho phần này.

a) Khai báo hằng số

Hằng số là một loại biến đặc biệt mà giá trị của nó được xác định ngay lúc khaibáo và luôn không thay đổi Nên dùng cách này cho những hằng số hay phải dùng lặplại trong chương trình.

VD 7: Hằng số π = 3.14159 Sau khi khai báo hằng số này:Const Pi=3.14159

Có thể sử dụng giá trị 3.14159 bất cứ chỗ nào trong chương trình với cái tên dễ

nhớ hơn là Pi.

Cú pháp:

[Public/Private] Const <tên_hằng>=<giá_trị_hằng_số>

Các từ khoá Public hay Private xác định phạm vi hiệu lực của hằng số, với từkhoá Public, hằng số này có thể sử dụng ở bất cứ đâu trong ứng dụng, còn với từ khoáPrivate thì hằng số này chỉ có thể sử dụng bên trong mô-đun nơi khai báo hằng số đó.

Ý nghĩa của hai từ khóa này cũng không thay đổi cho tất cả các phần khác mà có sửdụng chúng.

b) Khai báo biến

Cú pháp:

Dim <tên_biến> as <Kiểu_dữ_liệu>

Khi dùng từ khóa Public hay Private nhằm xác định phạm vi hiệu lực củabiến thay cho từ khóa Dim trong khai báo biến thì cú pháp như sau:

Public <tên_biến> as <Kiểu_dữ_liệu>

Private <tên_biến> as <Kiểu_dữ_liệu>

c) Khai báo kiểu tự định nghĩa

Trong VB có thể khai báo các kiểu dữ liệu theo nhu cầu của người sử dụng Cú

Trang 38

pháp khai báo như sau:

Type <Tên_ kiểu>

<tên_trường_1> as <Kiểu_dữ_liệu><tên_trường_2> as <Kiểu_dữ_liệu>…

<tên_trường_n> as <Kiểu_dữ_liệu>End Type

Sau khi khai báo kiểu tự định nghĩa, người dùng có thể sử dụng các biến cókiểu tự định nghĩa bằng cách khai báo như các biến thông thường, với<Kiểu_dữ_liệu> được thay bằng <Tên_kiểu> Để truy cập tới một trường của biến

kiểu bản ghi, dùng toán tử (.) hoặc dùng cặp từ khóa With… End With.

Các từ khoá Public hay Private nhằm xác định phạm vi hoạt động của kiểu

dữ liệu được khai báo Đồng thời khai báo kiểu chỉ được thực hiện ở cấp mô-đun(không thực hiện được trong các chương trình con) Khi không chỉ rõ thì phạm vi hoạt

động thì mặc định của một kiểu dữ liệu tự định nghĩa là Public.

d) Khai báo mảng tĩnh

Cú pháp:

[Public/Private/Dim] <tên_mảng> (<thông_số_về_chiều>) as <tên_kiểu>

Các thông số về chiều có thể biểu diễn qua các ví dụ.VD 8:

Dim a(3 To 5) As Integer ‘Mảng 1 chiều với các chỉ số từ 3 đến 5Dim A(3) As Long ‘Mảng 1 chiều với chỉ số đến 3 (mảng 1 chiều có‘4 phần tử với chỉ số từ 0 đến 3)

Dim A(2 To 4, 6) As Double ‘Mảng 2 chiều với một miền chỉ số từ 2 tới 4‘và một miền có chỉ số từ 0 đến 6.

Các từ khoá Public hay Private xác định phạm vi hoạt động của biến mảng

(trong trường hợp mảng được khai báo mức mô-đun) Các qui định về phạm vi hoạtđộng của mảng tương tự với biến thông thường.

e) Khai báo mảng động

Cú pháp:

[Public/Private/Dim] <tên_mảng> () as <tên_kiểu>

Trong khai báo trên không chứa các thông số về chiều và đó thuần túy chỉ làmột khai báo Các phần tử của mảng chưa được tạo ra (hay nói cách khác mảng vẫnchưa thực sự được cấp phát bộ nhớ) và vẫn chưa sẵn sàng để sử dụng Trước khi sửdụng mảng động hoặc khi muốn thay đổi kích thước của mảng, sử dụng lệnh Redim.Cú pháp như sau:

Redim <tên_mảng> (<các thông số về chiều>) as <tên kiểu>

Chú ý: <tên_kiểu> phải đúng như khai báo ban đầu, các thông số về chiều có

thể khác trước cả về số chiều và kích thước của từng chiều Khi đó, các dữ liệu cũtrong mảng không còn nữa, thay vào đó là những phần tử mới được khởi tạo.

f) Khai báo, tạo và làm việc với biến đối tượng

Khai báo và tạo biến đối tượng phải dùng thêm từ khóa New

Dim <tên_biến> as New <Kiểu_dữ_liệu>

Trang 39

<Kiểu_dữ_liệu> là lớp (class) đã được định nghĩa từ trước.Phép gán đối tượng được thực hiện với từ khóa Set:

Set <biến_đối_tượng> = <giá_trị>

Chú ý rằng nếu thực hiện khai báo một biến đối tượng như thông thường(không có từ khóa New) thì biến thực sự chưa được tạo ra Trong trường hợp đó,người sử dụng phải tạo và gán đối tượng với các từ khoá tương ứng là New và Set.

Dim <tên_biến> as <Kiểu_dữ_liệu>Set <tên_biến> = New <Kiểu_dữ_liệu>

Chú ý: Câu lệnh Set không phải là câu lệnh khai báo, vì vậy nó phải được viết

trong một chương trình con nào đó không thể nằm trong phần General của một mô-đun.Làm việc với một biến đối tượng tức là quá trình thao tác với đối tượng thôngqua các thuộc tính, phương thức và các sự kiện của đối tượng đó Để truy cập tới cácthuộc tính và phương thức của đối tượng, sử dụng theo cú pháp sau, chú ý đến dấuchấm (.) giữa tên biến và tên thuộc tính hay tên phương thức:

- Toán tử gán =

Gán giá trị cho biến hoặc thuộc tính.- Toán tử toán học gồm:

+ Cộng: ++ Trừ: -+ Nhân: *+ Chia:/

+ Chia lấy phần nguyên: \+ Chia lấy phần dư: MOD+ Luỹ thừa: ^

- Toán tử logic

+ Not: Trả về giá trị phủ định với giá trị biểu thức Not(TRUE)=FALSE+ And: Nối logic hai biểu thức Kết quả chỉ đúng khi tất cả các biểu thức đềuđúng Với 2 biểu thức thì: And(TRUE,TRUE)=TRUE; các trường hợp khác cho kếtquả bằng FALSE

+ Or: Kết quả đúng chỉ cần 1 biểu thức đúng Với 2 biểu thức thìOr(FALSE,FALSE)=FALSE; các trường hợp khác cho kết quả là TRUE.

+ Xor: Cho kết quả TRUE nếu hai đối số có cùng giá trị (cùng đúng hoặc cùngsai); ngược lại cho kết quả là FALSE

+ Eqv: Cho kết quả TRUE nếu hai đối số khác giá trị (1 đúng và 1 sai) Nếu

Trang 40

giống nhau cho kết quả FALSE.- Toán tử so sánh

+ So sánh bằng =+ Khác nhau <>+ Lớn hơn >

+ Lớn hơn hoặc bằng >=+ Nhỏ hơn <

+ Nhỏ hơn hoặc bằng <=

b) Các hàm toán học

Các hàm toán học được chứa trong thư viện Math (có thể tra cứu thư viện nàybằng Object Browser) và có nhiệm vụ thực hiện các phép toán thông thường hay gặp.Sau đây là một số hàm thông dụng:

- Abs(x) Lấy giá trị tuyệt đối- Exp(x) Lấy mũ cơ số tự nhiên- Log(x) Logarit cơ số tự nhiên- Sqr(x) Lấy bình phương

- Cos(x), Sin(x), Tan(x) Hàm lượng giác- Atn(x) Hàm lượng giác ngược

- Fix(x) Lấy phần nguyên (trước dấu phẩy) Fix(3.7)=3- Int(x) Lấy phần nguyên đã được làm tròn Int(3.7)=4

- Round(x,num) Làm tròn số thực <x> đến <num> chữ số sau dấu phẩy- Val(str) Chuyển đổi chuỗi <str> thành giá trị kiểu số

c) Các hàm chuyển đổi dữ liệu

Chuyển đổi định dạng số liệu là một nhu cầu thường gặp trong lập trình do cácngôn ngữ lập trình luôn đòi hỏi kiểu dữ liệu phải rõ ràng và cố định cho từng biếnnhằm tránh phát sinh các lỗi sau này Việc chuyển đổi này, nếu trong trường hợpthông thường, thì VB sẽ tự động thực hiện.

Nhưng khi gặp các yêu cầu đặc biệt thì buộc người dùng phải sử dụng nhữnghàm chuyển đổi phù hợp.

Việc chuyển đổi kiểu dữ liệu luôn có thể tạo ra lỗi do không thể chuyển đổiđược hoặc phát sinh kết quả sai Cho nên khi sử dụng cần chú ý đến các khả năng gâylỗi của việc chuyển đổi kiểu dữ liệu.

Các hàm này được chứa trong thư viện Conversion (có thể tra cứu thư viện nàybằng Object Browser) Sau đây là một số hàm thông dụng:

- CBool(Expression) Chuyển đổi dữ liệu sang kiểu logic (Boolean)- CByte(Expression) Chuyển đổi dữ liệu sang kiểu Byte

- CInt(Expression) Chuyển đổi dữ liệu sang kiểu nguyên (Integer)- CLng(Expression) Chuyển đổi dữ liệu sang kiểu nguyên (Long)- CDbl(Expression) Chuyển đổi dữ liệu sang kiểu thực (Double)- CSng(Expression) Chuyển đổi dữ liệu sang kiểu thực (Single)- CStr(Expression) Chuyển đổi dữ liệu sang kiểu xâu (String)- Str(Number) Chuyển đổi dữ liệu số sang kiểu xâu (String)

Ngày đăng: 23/11/2012, 10:35

HÌNH ẢNH LIÊN QUAN

Hình 1.2. Điều chỉnh hiển thị số ở Tab Numbers về dạng Việt Pháp - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 1.2. Điều chỉnh hiển thị số ở Tab Numbers về dạng Việt Pháp (Trang 9)
Hình 1.8. Hộp thoại nhập thơng tin người dùng - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 1.8. Hộp thoại nhập thơng tin người dùng (Trang 13)
Hình 1.10. Phải chọn Advanced Customization of Application ft  Micrnsoft  Dffice  2003  =i=ii1j1  - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 1.10. Phải chọn Advanced Customization of Application ft Micrnsoft Dffice 2003 =i=ii1j1 (Trang 14)
Hình 1.14. Báo lỗi module ấn, do khơng cài đặt đầy đú Microsoft Office, (tất - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 1.14. Báo lỗi module ấn, do khơng cài đặt đầy đú Microsoft Office, (tất (Trang 15)
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  diệt  Viras  BKÁV  sau  khi  cài  - Xử lý tự động công nghệ thông tin trong văn phòng
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 diệt Viras BKÁV sau khi cài (Trang 16)
Hình 1.17. Nếu khơng cản thận, BKAYV là chương trình phá hỏng mọi - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 1.17. Nếu khơng cản thận, BKAYV là chương trình phá hỏng mọi (Trang 16)
Hình 2.1. Giao diện chính của VBA IDE - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.1. Giao diện chính của VBA IDE (Trang 22)
Hình 2.5. Danh sách các thành phần được tự động hiển thị. - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.5. Danh sách các thành phần được tự động hiển thị (Trang 24)
Hình 2.6. Tự động hiển thị thơng tin của các tham số trong chương trình con giúp  kiểm  sốt  được  việc  lập  trình  - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.6. Tự động hiển thị thơng tin của các tham số trong chương trình con giúp kiểm sốt được việc lập trình (Trang 25)
Hình 2.13. Kết quả của thú tục hiện ra trên cửa số Immediate - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.13. Kết quả của thú tục hiện ra trên cửa số Immediate (Trang 40)
Hình 2.18. Lựa chọn bên hộp cơng cụ rồi kéo/thá vào UserForm điều khiến cần tạo c)  Các  thuộc  tính  của  LserForm  và  các  thành phân  điều  khiển - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.18. Lựa chọn bên hộp cơng cụ rồi kéo/thá vào UserForm điều khiến cần tạo c) Các thuộc tính của LserForm và các thành phân điều khiển (Trang 51)
B2. Trong màn hình của VBA IDE vừa được hiển thị, chọn Insert/Module. B3.  Nhập  đoạn  mã  lệnh  sau:  - Xử lý tự động công nghệ thông tin trong văn phòng
2. Trong màn hình của VBA IDE vừa được hiển thị, chọn Insert/Module. B3. Nhập đoạn mã lệnh sau: (Trang 73)
Hình 2.30. Thực thi macro trực tiếp từ cửa số soạn thảo VBA - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.30. Thực thi macro trực tiếp từ cửa số soạn thảo VBA (Trang 75)
Hình 2.32. Hộp thoại cảnh báo an ninh của Excel - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.32. Hộp thoại cảnh báo an ninh của Excel (Trang 76)
Hình 2.36. Thực đơn đối với nút lệnh tùy biến - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.36. Thực đơn đối với nút lệnh tùy biến (Trang 79)
Hình 2.38. Chọn Keyboard để mở hộp thoại gán phím tắt ELIistninize  Kpvhnard  - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.38. Chọn Keyboard để mở hộp thoại gán phím tắt ELIistninize Kpvhnard (Trang 80)
Hình 2.39. Chọn chức năng “Cất” để gán phím tắt F2 từ hộp thoại - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 2.39. Chọn chức năng “Cất” để gán phím tắt F2 từ hộp thoại (Trang 81)
Hình 3.11. Tắt hết chức năng đặt cữ của hộp thoại Drawing/Grid +  Drawing/Grid  đê  tắt  hêt  các  chức  năng  đặt  cữ. - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 3.11. Tắt hết chức năng đặt cữ của hộp thoại Drawing/Grid + Drawing/Grid đê tắt hêt các chức năng đặt cữ (Trang 91)
Edit Thiết lập trạng thái soạn tải liệu của người dùng Print Thiết  lập  trạng thái in tài  liệu  của  người  dùng  - Xử lý tự động công nghệ thông tin trong văn phòng
dit Thiết lập trạng thái soạn tải liệu của người dùng Print Thiết lập trạng thái in tài liệu của người dùng (Trang 95)
Hình 3.18. Thiết lập hộp thoại Tools/Options với thẻ Edit [Intinnis  - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 3.18. Thiết lập hộp thoại Tools/Options với thẻ Edit [Intinnis (Trang 96)
Hình 3.21. Thiết lập hộp thoại Tools/Options với thẻ Save - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 3.21. Thiết lập hộp thoại Tools/Options với thẻ Save (Trang 97)
Hình 3.24. Chọn như hình vẽ trong VBA để nhập nội dung macro Document_New  - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 3.24. Chọn như hình vẽ trong VBA để nhập nội dung macro Document_New (Trang 104)
Hình 3.25. Maero ListCommands thơng báo danh sách phím tắt - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 3.25. Maero ListCommands thơng báo danh sách phím tắt (Trang 107)
Hình 4.1. Hộp thoại Style and Formatting - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 4.1. Hộp thoại Style and Formatting (Trang 112)
Hình 4.5. Nút New Style trên hộp thoại Style - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 4.5. Nút New Style trên hộp thoại Style (Trang 114)
Hình 5.6. Hộp thoại tạo ngăn AutoCorrect - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 5.6. Hộp thoại tạo ngăn AutoCorrect (Trang 166)
Bảng 5.2. So sánh một số nội dung khác nhau giữa AutoText và AutoCorrect - Xử lý tự động công nghệ thông tin trong văn phòng
Bảng 5.2. So sánh một số nội dung khác nhau giữa AutoText và AutoCorrect (Trang 167)
Hình 5.18. Chèn số trang dọc với nội dung trang ngang - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 5.18. Chèn số trang dọc với nội dung trang ngang (Trang 175)
Chọn Insert/ Symbols hiện ra hộp thoại chèn Symbol (hình 5.26 trang I78) - Xử lý tự động công nghệ thông tin trong văn phòng
h ọn Insert/ Symbols hiện ra hộp thoại chèn Symbol (hình 5.26 trang I78) (Trang 182)
Hình 5.30. Tạo form và các điều khiên với thuộc tính Name, các điều khiên khơng  nhắc  tới  đặt  thuộc  tính  Name  bât  kỳ  - Xử lý tự động công nghệ thông tin trong văn phòng
Hình 5.30. Tạo form và các điều khiên với thuộc tính Name, các điều khiên khơng nhắc tới đặt thuộc tính Name bât kỳ (Trang 196)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w