Hướng dẫn cách gọi Sub trong VBA qua các ví dụ

G-LEARNING
G-LEARNING
May 07 2020

Chương trình con (Sub) là gì?

Một chương trình con là một tập hợp các đoạn mã thực hiện một nhiệm vụ cụ thể và không trả về kết quả. Các chương trình con được sử dụng để chia những đoạn mã lớn thành các phần nhỏ để có thể dễ dàng quản lý được. 

Tại sao chúng ta lại sử dụng chương trình con?

  • Chia mã code thành các đoạn mã nhỏ: Một chương trình máy tính trung bình có hàng nghìn dòng mã nguồn. Điều này thật sự rất phức tạp. Các chương trình con giúp giải quyết vấn đề này bằng cách chia nhỏ chương trình thành các đoạn mã nhỏ có thể quản lý được
  • Tái sử dụng mã code: Giả sử bạn có một chương trình cần truy cập cơ sở dữ liệu, hầu như tất cả các cửa sổ của chương trình sẽ cần tương tác với cơ sở dữ liệu. Thay vì viết mã riêng cho các cửa sổ này, bạn có thể tạo một hàm xử lý tất cả các tương tác cơ sở dữ liệu. Bạn có thể gọi nó sau đó từ bất kỳ cửa sổ nào mà bạn muốn.
  • Các chương trình con và hàm là mã self-documenting. Giả sử bạn có một hàm tính toán lãi vay và một hàm khác kết nối với cơ sở dữ liệu. Bằng cách chỉ cần nhìn vào tên của chương trình con hoặc hàm, lập trình viên sẽ có thể biết được chương trình đó có chức năng là gì. 

Quy tắc đặt tên chương trình con và hàm

Để sử dụng chương trình con và hàm, có một bộ quy tắc mà chúng ta phải tuân theo:

  • Tên của chương trình con hoặc hàm không thể chứa khoảng trắng
  • Tên của chương trình con hoặc hàm nên bắt đầu bằng một chữ cái hoặc dấu gạch dưới. Nó không thể được bắt đầu bằng số hay ký tự đặc biệt.
  • Tên của chương trình con hoặc hàm không thể là một từ khóa. Từ khóa là một từ có ý nghĩa đặc biệt trong VBA. Ví dụ như : Private, Sub, Function và End, …Trình biên dịch sử dụng chúng cho các nhiệm vụ cụ thể. 

Cú pháp của chương trình con trong VBA

Bạn sẽ cần phải kích hoạt tab Developer trong Excel để làm theo ví dụ này.

Chương trình con có cú pháp như sau:

Trong đó:

CodeHành động
“Private Sub mySubRoutine(…)”Từ khóa “Sub” được sử dụng để khai báo tên của chương trình con là “mySubRoutine” và bắt đầu phần thân của chương trình con.Từ khóa Private được sử dụng để chỉ định phạm vi của chương trình con
“ByVal arg1 As String, ByVal arg2 As String” :Khai báo hai tham số của kiểu dữ liệu chuỗi có tên là arg1 và arg2
“End Sub”“End Sub” được sử dụng để kết thúc phần thân của chương trình con

Cách gọi chương trình con trong VBA

  1. Thiết kế giao diện người dùng và thiết lập thuộc tính cho điều khiển người dùng.
  2. Thêm chương trình con
  3. Viết mã tạo nút lệnh gọi chương trình con.
  4. Kiểm tra
Xem thêm: Tự học lập trình VBA

Bước 1: Giao diện người dùng

Thiết kế giao diện người dùng như hình dưới đây:

Thiết lập các thuộc tính:

S/NControlPropertyValue
1CommandButton1NamebtnDisplayFullName
2
CaptionFullname Subroutine

Giao diện của bạn sẽ trông như sau:

Bước 2: Thêm chương trình con

  1. Nhấn tổ hợp phím Alt + F11 để mở cửa sổ code
  2. Thêm chương trình con sau:

Trong đó:

CodeActions
“Private Sub displayFullName(…)”Khai báo một chương trình con riêng displayFullName (hiển thị họ tên) chấp nhận hai tham số chuỗi
“ByVal firstName As String, ByVal lastName As String”Khai báo hai biến tham số là firsName và lastName
MsgBox firstName & ” ” & lastName”Gọi hàm tích hợp MsgBox để hiển thị hộp thông báo. Sau đó chuyển các biến ‘firstName’ và ‘lastName’ thành tham sốDấu “&” được sử dụng để nối hai biến và thêm một khoảng trống ở giữa chúng

Bước 3: Gọi chương trình con bằng cách nhấn nút lệnh

Kích chuột phải vào nút lệnh như trong hình bên dưới. Chọn View Code. Trình chỉnh sửa mã sẽ mở.

Thêm đoạn code sau vào trình chỉnh sửa mã cho việc nhấp nút lệnh btnDisplayFullName

Cửa sổ code sẽ hiện ra như sau:

Lưu thay đổi và đóng cửa sổ code

Bước 4: Kiểm tra code

Trên thanh công cụ, đặt chế độ Design Mode là “off” như hình dưới đây:

Bước 5: Nhấp vào nút lệnh ‘FullName Subroutine’

Kết quả sẽ hiện ra như sau:

Bạn có thể tải file Excel chứa mã code ở trên tại đây: https://drive.google.com/uc?export=download&id=0BwL5un1OyjsdTDg1QllTM2p0ZHM

Kết luận

  • Chương trình con hay còn gọi là Sub là một tập hợp các đoạn mã thực hiện một nhiệm vụ cụ thể.
  • Chương trình con không trả về kết quả sau khi lệnh được thực thi.
  • Chương trình con cung cấp khả năng tái sử dụng mã.
  • Chương trình con giúp chia đoạn mã lớn thành các đoạn mã nhỏ có thể quản lý được.

Hy vọng qua bài viết này, các bạn đã có thể hiểu thêm về các kiến thức trong VBA. Ngoài ra bạn có thể truy cập Gitiho để tham gia các khóa học hay về Tin học văn phòng như VBA, Excel, Power Point… để ứng dụng vào trong công việc được tốt hơn.

Đánh giá bài viết này

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

Bài viết liên quan

Hướng dẫn về đối tượng Range trong VBA cơ bản

Hướng dẫn về đối tượng Range trong VBA cơ bản

Hướng dẫn cách dùng các toán tử logic AND, OR, NOT trong VBA

Hướng dẫn cách dùng các toán tử logic AND, OR, NOT trong VBA

Hướng dẫn cách viết các toán tử so sánh trong VBA

Hướng dẫn cách viết các toán tử so sánh trong VBA

Tìm kiếm bằng trình duyệt Google thật dễ dàng với VBA

Tìm kiếm bằng trình duyệt Google thật dễ dàng với VBA

Tìm kiếm bằng trình duyệt Google thật dễ dàng với VBA

Tìm kiếm bằng trình duyệt Google thật dễ dàng với VBA

Đếm số lượng màu sắc trong vùng bằng Function VBA

Đếm số lượng màu sắc trong vùng bằng Function VBA

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội