24/05/2018, 18:02

Định nghĩa Hàm (function) trong Visual Basic

Hàm và thủ tục được gọi là những chương trình con, giúp cho chương trình dễ bảo trì, dễ hiểu và tránh phải viết lại những đoạn lệnh tương tự nhau. Thực hành: Định nghĩa hàm tính tổng của 2 số nguyên, kết quả được trả lại (gán) về cho hàm. ...

Hàm và thủ tục được gọi là những chương trình con, giúp cho chương trình dễ bảo trì, dễ hiểu và tránh phải viết lại những đoạn lệnh tương tự nhau.

Thực hành: Định nghĩa hàm tính tổng của 2 số nguyên, kết quả được trả lại (gán) về cho hàm.

Hướng dẫn: Vì hàm cần tính tổng của 2 số nguyên nên số tham số đầu vào là 2, kiểu của tham số đầu vào là Integer, và vì chỉ cần lấy giá trị của tham số vào mà không có nhu cầu thay đổi giá trị của nó do vậy ta sẽ khai báo 2 tham số của hàm thuộc dạng tham trị.

Minh hoạ:

Option Explicit

'/// Hàm tính tổng của hai số nguyên, 2 tham số truyền vào dưới dạng tham trị

Function Tong(byVal a AsInteger, byVal b AsInteger) As Long

Dim S As Long

S = a + b

Tong = S '/// Gán kết quả cho hàm

End Function

'/// Sử dụng hàm vừa tạo

PrivateSubForm_Load()

Dim X AsInteger, Y AsInteger, Z As Long

X = 5

Y = 10

Tong 10,20 '/// Gọi hàm Tong độc lập

Z = Tong(X,Y) '// Gọi hàm Tong và gán KQ cho Z

MsgBox "Tổng là : " & Tong(10, 20) '// Gọi hàm Tong

End sub

Chú ý:

  • Khi định nghĩa hàm, nếu trước các tham số hình thức (tham số a, b ở trên) mà không có từ khóa byVal thì VB sẽ hiểu là tham số đó ở dạng tham chiếu (tham biến) mà ta sẽ nói sau.
  • Hàm thì có thể gọi độc lập (ví dụ : Tong 10,20), khi đó các tham số không được đặt trong cặp ngoặc đơn. Còn nếu hàm tham gia vào biểu thức hay câu lệnh khác (2 cách gọi còn lại ở trên) thì các tham số phải được đặt trong cặp ngoặc đơn.
  • Việc gán kết quả cho tên hàm được gọi là trả kết quả về cho hàm.
0