Thắc mắc bị lỗi khi Redim Preserve một mảng

  • Thread starter Thread starter thuctien
  • Ngày gửi Ngày gửi
Liên hệ QC

thuctien

Thành viên chính thức
Tham gia
26/2/08
Bài viết
84
Được thích
22
Xin hỏi các anh chị về vấn đề báo lỗi khi Redim Preserve" Máy báo lỗi 09 Subscript out of range tại dòng Redim Preserve myArr(Ubound(MyArr)+1,1)
Em kiểm tra kỹ vẫn chưa biết được tại sao lại lỗi, xin hỏi các anh chị ạ.


Mã:
Public Sub ReDimArr()
Dim MyArr() As Variant
ReDim MyArr(1, 1)
If UBound(MyArr) < 5 Then
    ReDim Preserve MyArr(UBound(MyArr) + 1, 1)
End If
End Sub

Em cảm ơn rất nhiều.
 
Xin hỏi các anh chị về vấn đề báo lỗi khi Redim Preserve" Máy báo lỗi 09 Subscript out of range tại dòng Redim Preserve myArr(Ubound(MyArr)+1,1)
Em kiểm tra kỹ vẫn chưa biết được tại sao lại lỗi, xin hỏi các anh chị ạ.


Mã:
Public Sub ReDimArr()
Dim MyArr() As Variant
ReDim MyArr(1, 1)
If UBound(MyArr) < 5 Then
    ReDim Preserve MyArr(UBound(MyArr) + 1, 1)
End If
End Sub

Em cảm ơn rất nhiều.
Đương nhiên code lỗi rồi. ReDim Preserve chỉ cho phép điều chỉnh kích thước của chiều cuối cùng thôi
Ví dụ bạn có MyArr(a, b) thì bạn chỉ chỉnh được cái b mà không thể chỉnh được a
 
Upvote 0
Đương nhiên code lỗi rồi. ReDim Preserve chỉ cho phép điều chỉnh kích thước của chiều cuối cùng thôi
Ví dụ bạn có MyArr(a, b) thì bạn chỉ chỉnh được cái b mà không thể chỉnh được a
Em cảm ơn anh rất nhiều vì câu trả lời quá rõ ràng. Đọc ở các trang khác cũng có nói tới điều này nhưng em lại hiểu nhầm là chỉ cho phép điều chỉnh cận dưới của mảng.
 
Upvote 0
Đương nhiên code lỗi rồi. ReDim Preserve chỉ cho phép điều chỉnh kích thước của chiều cuối cùng thôi
Ví dụ bạn có MyArr(a, b) thì bạn chỉ chỉnh được cái b mà không thể chỉnh được a
Nói như vậy chưa chính xác, nó là chỉ cho phép thay đổi biên trên của chiều cuối cùng.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom