Khi tính tổng của 2 số nguyên như phần trên thì ta cần lấy kết quả trả về là tổng của chúng, khi tính sin(x) thì ta cần kết quả trả về là sin của số x... lúc đó ta cần phải định nghĩa hàm. Tuy nhiên, trong một số trường hợp khi viết các chương trình con, nếu không cần phải kết quả trả về từ chương trình con, lúc đó ta nên định nghĩa chương trình con đó ở dạng thủ tục (Sub).
Thực hành: Hiển thị ngày tháng năm, giờ phút giây hiện tại trong máy tính.
Hướng dẫn:Hàm Now cho ta biết thông tin về ngày/tháng/năm và giờ/phút/giây hiện tại trong máy tính. Muốn trích riêng ngày, tháng, năm, giờ, phút, giây thì dùng các hàm tương ứng là Year, Month, day, hour, minute, second....
Viết lệnh: Option Explicit
'/// Thủ tục hiển thị thời gian hiện tại trong máy tính
Private SubThoiGian()
DimDAsDate'// Khai báo một biến kiểu Date/Time
D = Now'// Lấy ngày, tháng, năm, giờ, phút, giây hiện hành trong máy tính
MsgBox "Hôm nay là ngày " & Day(D) & " tháng " & Month(D) & " năm " & Year(D) MsgBox "Bây giờ là " & Hour(D) & " giờ " & Minute(D) &" phút và " & Second(D) & " giây"
End sub
Private SubForm_Load()
CallThoiGian '/// Gọi thủ tục ThờiGian (Có thể bỏ qua từ khoá Call)
Kết quả thực hiện chương trình
Chú thích:
• Vì công việc ở trên chỉ đơn thuần là hiển thị thời gian hiện có trong máy tính mà không cần lấy giá trị trả về từ chương trình con, do vậy chương trình con được định nghĩa ở đây nên là dạng thủ tục (Sub).
• Việc gọi độc lập hàm hay thủ tục có thể kèm thêm từ khoá Call, nhưng không bắt buộc (Từ khoá Call được VB giữ lại từ phiên bản BasicforDos). Tuy nhiên khi chúng ta gọi chương trình con với từ khoá Call thì các tham số (nếu có) bắt buộc phải đặt trong cặp ngoặc đơn.
• Câu lệnh Date = <Thời gian mới> và Time = <Giờ phút mới> để đặt lại thời gian của máy tính. Ví dụ: Date = #February 12, 1985# và Time = #4:35:17 PM# để thay đổi thời gian trong máy tính.