He he, cột mỡ của bác hơi bị cao quá đó.
Để em leo thử nhé, em hơi bị khát ...cà phê và sách VBA:
1. Phân biệt 3 kiểu khai báo sub sau (ý nghĩa của từng cách khai báo)
Sub Test(i As Interger)
Ở đây, kiểu dữ liệu i được khai báo trước là loại Integer thôi
Trong VB, kiểu này tương tự như
Sub Test(ByRef i As Interger)
vì ngầm định tham chiếu dữ liệu là tên biến cho tất cả các loại DATA Types (chiếm 4 Bytes)
Sub Test(ByVal i As Interger) tham chiếu dữ liệu là gía trị của biến (chiếm từ 2 đến 16 bytes)
Vậy tùy loại dữ liệu hay yêu cầu mà chọn Byval hay không, Kiểu Variant hay String thì nên chọn ByRef thôi
2. Phân biệt 3 cách gọi cái Sub trên
Call Test(i) tương đương với Test(i)
Tuy vậy đã Call thì phải đi với đóng mở ngoặc ( biến )
Ngoài ra Call có thể gọi nhiều thứ như Sub, Function, DLL nhưng hình như hơi bị cũ
Test i vs Test(i)
Tham khảo ví dụ trong help của VBA, thôi thì em có huyên thuyên gì thì bác Bill cũng cười cho, chi bằng chép nguyên văn lại:
++++++++++++++++++++++++++++++++++
Sub Main()
MultiBeep 56
Message
End Sub
Sub MultiBeep(numbeeps)
For counter = 1 To numbeeps
Beep
Next counter
End Sub
Sub Message()
MsgBox "Time to take a break!"
End Sub
Using Parentheses when Calling Function Procedures
To use the return value of a function, assign the function to a variable and enclose the arguments in parentheses, as shown in the following example.
Answer3 = MsgBox("Are you happy with your salary?", 4, "Question 3")
If you're not interested in the return value of a function, you can call a function the same way you call a Sub procedure. Omit the parentheses, list the arguments, and do not assign the function to a variable, as shown in the following example.
MsgBox "Task Completed!", 0, "Task Box"
Caution If you include parentheses in the preceding example, the statement causes a syntax error.
+++++++++++++++++++++++++++++
Bài em nộp có bấy nhiêu, mong các bác tận tình chỉ bảo!
Bây giờ tớ có 2 câu hỏi thế này:
1. Phân biệt 3 kiểu khai báo sub sau (ý nghĩa của từng cách khai báo)
Sub Test(i As Interger)
Sub Test(ByRef i As Interger)
Sub Test(ByVal i As Interger)
2. Phân biệt 3 cách gọi cái Sub trên
Call Test(i)
Test i
Test(i)
Nếu ai giải thích đúng & thật đơn giản thì:
1. Ở HN:
- 3 vụ cafe miễn phí bất kỳ lúc nào và muốn hỏi gì về VB thì trong 3 vụ đó cứ hỏi thoải mái
- Giống ở nơi khác
2. Ở nơi khác:
- Có thể hỏi code bất kể về chủ đề gì về VB tới email của tớ
- Có thể hỏi về các thể loại ebooks (chứ ko phải tên 1 cuốn sách cụ thể nào đó vì có thể tớ ko tìm được ) về tất cả các món về lập trình, về CSDL, về thiết kế, các tài liệu luyện thi chứng chỉ của Microsoft (mới nhất), về tài chính kế toán (dĩ nhiên là tiếng anh thôi ), về ERP, v.v... Tóm lại là những gì tớ có thể support.
Ấy chết , e, em hơi bị đãng trí bài naỳ tưởng chưa có ai nộp bài