Sub Trong VBA - VietTuts

Function trong VBA Khối lệnh With-End With trong VBA

Sub trong VBA hay còn gọi là thủ tục trong VBA là tương tự như function, tuy nhiên có một số khác biệt.

  • Các thủ tục Sub KHÔNG không có giá trị trả về trong khi các function có thể hoặc không trả lại một giá trị.
  • Các thủ tục Sub được gọi với từ khóa Call hoặc không.

Nội dung chính

  • Cú pháp của Sub trong VBA
  • Gọi một Sub trong VBA
    • Gọi Sub trong một Sub khác
    • Gọi Sub trong một Function khác
    • Gọi Sub trong Cell của Worksheet thông qua một function

Cú pháp của Sub trong VBA

Sub SubName([parameter-list]) statement 1 statement 2 statement 3 ....... statement n End Sub

Trong đó:

[parameter-list]: là danh sách tham số, có thể có không, một hoặc nhiều.

Ví dụ

Ví dụ sau hiển thị tích của hai số đã cho trong một hộp thoại thông báo.

Sub Area(x As Double, y As Double) MsgBox x * y End Sub

Gọi một Sub trong VBA

Bạn có thể gọi lại Sub trong một Functon khác hoặc trong một Sub khác.

Bạn có thể sử dụng hoặc không cần sử dụng từ khóa Call để gọi Sub.

Gọi Sub trong một Sub khác

Ví dụ:

Sub ClickButton() Call Area(10, 10) End Sub

Gọi Sub trong một Function khác

Ví dụ:

Function findArea(height As Double, Optional width As Double) If IsMissing(width) Then Call Area(height, height) Else Call Area(height, width) End If End Function

Gọi Sub trong Cell của Worksheet thông qua một function

Bây giờ bạn sẽ chỉ có thể gọi Sub trong Cell của Worksheet thông qua một function như thể hiện trong ảnh chụp màn hình sau đây:

Sub trong VBA

Tích của hai số được tính và chỉ được hiển thị trong hộp thoại thông báo:

Sub trong VBA

Kết quả hiển thị trong cell là 0, vì Sub trong VBA không có giá trị trả về:

Sub trong VBA Function trong VBA Khối lệnh With-End With trong VBA

Từ khóa » Cú Pháp Trong Vba