Câu lệnh Call
Một thủ tục gọi một thủ tục khác ra làm việc, trong VBA chúng ta sử dụng câu lệnh Call.
[Call] TenThuTuc [ThamSo]
Call từ khóa có thể giản lược.
Nếu thủ tục chứa tham số đầu vào thì nhất định phải truyền tham số.
Nếu thủ tục không chứa tham số đầu vào thì không cần phải truyền tham số.
Giả sử trong Module tôi có hai thủ tục như sau:
Ở thủ tục main, tôi muốn gọi hai thủ tục trên ra làm việc, tôi có các cách viết như sau:
Theo bạn, trình tự xử lý của thủ tục main dưới đây sẽ như thế nào?
Đáp án:
Xu ly A => Xu ly C => Xu ly B
Một thủ tục gọi một thủ tục khác ra làm việc, trong VBA chúng ta sử dụng câu lệnh Call.
[Call] TenThuTuc [ThamSo]
Call từ khóa có thể giản lược.
Nếu thủ tục chứa tham số đầu vào thì nhất định phải truyền tham số.
Nếu thủ tục không chứa tham số đầu vào thì không cần phải truyền tham số.
Giả sử trong Module tôi có hai thủ tục như sau:
Mã:
Sub sample1()
'Xu ly
End Sub
Sub sample2(arg1, arg2)
'Xu ly
End Sub
Mã:
Sub main()
Sample1
Call Sample1
sample2 arg1, arg2
Call sample2(arg1, arg2)
'Cach viet sai:
'sample2 (arg1, arg2)
End Sub
Mã:
Sub main()
'Xu ly A
Call sample2
'Xu ly B
End Sub
Sub sample2()
'Xu ly C
End Sub
Xu ly A => Xu ly C => Xu ly B