Function và Sub

Sự khác biệt giữa một hàm FUNCTION và SUBtrong Excel VBA là Function có thể trả về một giá trị , trong khi Sub thì không. Funtion và Sub trở nên rất hữu ích khi chương trình ngày một phức tạp

Function

Nếu bạn muốn Excel VBA để thực hiện một nhiệm vụ mà trả về kết quả, bạn có thể sử dụng Function. Đặt Function vào một module ( Trong Visual Basic Editor, nhấn Insert, Module) . Ví dụ , Function với tên Area.
Function và Sub
Function Area(x As Double, y As Double) As Double

Area = x * y

End FunctionFunction và Sub

Giải thích : Hàm này có hai đối số (kiểu Double) và một kiểu trả về (sau as kiểu Double) . Bạn có thể sử dụng tên của Function (Area) trong mã của bạn để chỉ ra kết quả như mong muốn (ở đây x * y).

Bạn có thể sử dụng chức năng này từ các nơi khác trong mã của bạn đơn giản bằng cách sử dụng tên của Function và đưa ra một giá trị của các tham số .

Đặt một Function và Subnút bấm trên bảng tính của bạn và thêm các dòng mã sau :

Dim z As Double

z = Area(3, 5) + 2

MsgBox z

Giải thích : Hàm trả về một giá trị , do đó bạn có để 'lấy' giá trị này trong mã của bạn . Bạn có thể sử dụng một biến khác (z) cho việc này . Tiếp theo, bạn có thể thêm các giá trị khác để biến này (nếu bạn muốn) . Cuối cùng , hiển thị giá trị sử dụng một MsgBox .

Kết quả khi bạn nhấp chuột vào nút bấm trên bảng :

Function và Sub Sub Nếu bạn muốn Excel VBA để thực hiện một số hành động, bạn có thể sử dụng một Sub. Đặt một Sub vào một module ( Trong Visual Basic Editor, nhấn Insert, Module) . Ví dụ , Sub với tên Area.
Function và Sub
Sub Area(x As Double, y As Double)

MsgBox x * y

End Sub
Function và Sub
Function và SubGiải thích : sub này có hai đối số (kiểu Double) . Nó không trả lại giá trị ! Bạn có thể tham khảo phụ này ( gọi sub ) từ các nơi khác trong mã của bạn bằng cách đơn giản bằng cách sử dụng tên của tiểu và đưa ra một giá trị của các tham số .
Đặt một Function và Subnút lệnh trên bảng tính của bạn và thêm dòng mã sau :

Area 3, 5

Kết quả khi bạn nhấp chuột vào nút lệnh trên bảng :

Excel VBA Sub Result Bạn có thể thấy sự khác biệt giữa Function và Sub? Function trả lại những giá trị 15. Chúng tôi bổ sung các giá trị 2 cho kết quả này và hiển thị các kết quả cuối cùng . Khi chúng tôi gọi Sub chúng tôi không có kiểm soát nhiều hơn kết quả ( 15 ) bởi vì một SUB không thể trả về một giá trị!

Post a Comment