Khi bạn viết macro trong Excel, bạn sử dụng ngôn ngữ lập trình có tên là Visual Basic for Applications (VBA). Điều này dựa trên ngôn ngữ lập trình BASIC, với các phần mở rộng dành riêng cho Excel. Một trong những tính năng của ngôn ngữ này là khả năng sử dụng các chương trình con trong các chương trình của bạn. Ví dụ: hãy xem xét macro VBA sau:

Sub Macro1()

TestSub End Sub
Sub TestSub()

MsgBox "In the subroutine"

End Sub

Macro đơn giản này (Macro1) không làm gì khác ngoài việc gọi một chương trình con (TestSub), đến lượt nó sẽ hiển thị một hộp thông báo để thông báo cho bạn rằng nó nằm trong chương trình con. Khi bạn bấm vào OK để loại bỏ hộp thông báo, chương trình con kết thúc và trả lại quyền điều khiển cho chương trình chính. Bạn có thể có nhiều chương trình con trong một chương trình VBA như bạn muốn. Mục đích của mỗi cái phải là thực hiện các tác vụ chung để bạn không phải viết lại cùng một đoạn mã.

Bạn cũng có thể chuyển các tham số cho các chương trình con của mình. Các tham số này sau đó có thể được thực hiện bởi chương trình con của bạn. Ví dụ: hãy xem xét macro sau:

Sub Macro1()

A = 1     PrintIt A End Sub
Sub PrintIt(x)

MsgBox "Value: " & x End Sub

Đây là một macro đơn giản đặt một biến, sau đó chuyển nó trong một lệnh gọi chương trình con tới PrintIt. Chương trình con này hiển thị giá trị của biến trong một hộp thông báo, sau đó (sau khi bạn nhấn OK) trở lại chương trình đang gọi.

Chú ý rằng chương trình con không sử dụng cùng một tên biến như nó đã được truyền vào. Điều này là do VBA gán lại giá trị của x (những gì mà chương trình con mong đợi nhận được) để nó khớp với giá trị của A (những gì chương trình đang chuyển cho chương trình con). Điều quan trọng cần nhớ khi truyền tham số cho chương trình con là chương trình của bạn phải truyền cùng một số tham số như chương trình con mong đợi và các tham số phải có kiểu phù hợp và theo thứ tự thích hợp.

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (2258) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: