Là 2 hàm đều trả về giá trị số nguyên, sử dụng trong các bài toán khó của lập trình.
LBound và UBound là hai hàm được sử dụng để lấy chỉ số nhỏ nhất và lớn nhất của mảng, giúp bạn xác định phạm vi của chỉ số mảng.
LBound(array)
Hàm này trả về chỉ số nhỏ nhất (lower bound) của mảng.
Mặc định trong VBA, chỉ số nhỏ nhất của mảng là 0, nhưng nếu mảng được khai báo với chỉ số bắt đầu khác (ví dụ: mảng từ 1 đến 5), thì LBound sẽ trả về chỉ số bắt đầu đó.
Cú pháp: LBound(array)
Ví dụ:
Dim a(1 To 5) As Integer
MsgBox LBound(a) ' Kết quả là 1, vì mảng bắt đầu từ 1
Hàm này trả về chỉ số lớn nhất (upper bound) của mảng.
Ví dụ, nếu mảng được khai báo với chỉ số từ 1 đến 5, UBound sẽ trả về 5.
Cú pháp: UBound(array)
Ví dụ:
Dim a(1 To 5) As Integer
MsgBox UBound(a) ' Kết quả là 5, vì mảng có chỉ số lớn nhất là 5
LBound trả về chỉ số nhỏ nhất của mảng (ví dụ: 0 hoặc 1, tùy thuộc vào cách khai báo mảng).
UBound trả về chỉ số lớn nhất của mảng (ví dụ: 4 cho mảng 5 phần tử có chỉ số từ 0 đến 4, hoặc 5 cho mảng 5 phần tử có chỉ số từ 1 đến 5).
Ví dụ minh họa:
Dim arr1(0 To 4) As Integer ' Mảng có chỉ số từ 0 đến 4
Dim arr2(1 To 10) As Integer ' Mảng có chỉ số từ 1 đến 10
' Lấy chỉ số nhỏ nhất và lớn nhất của mảng arr1
MsgBox "arr1 - LBound: " & LBound(arr1) & ", UBound: " & UBound(arr1)
' Lấy chỉ số nhỏ nhất và lớn nhất của mảng arr2
MsgBox "arr2 - LBound: " & LBound(arr2) & ", UBound: " & UBound(arr2)
Ví dụ tạo ra mảng đa chiều:
Dim A(1 To 100, 0 To 3, -3 To 4)
Hàm |
Giá trị Trả về |
Giải thích |
-- Trên | ||
UBound(A, 1) |
100 |
Chiều 1 |
UBound(A, 2) |
3 |
Chiều 2 |
UBound(A, 3) |
4 |
Chiều 3 |
-- Dưới | ||
LBound(A, 1) |
1 | Chiều 1 |
LBound(A, 2) |
0 | Chiều 2 |
LBound(A, 3) |
-3 | Chiều 3 |
Tìm kiếm:
Học lập trình Access nâng cao bạn cần nắm rõ UBound và LBound khác nhau như thế nào ?