Ta cần xác định vùng cần chuyển thành mảng
Ví dụ có dữ liệu
| A | B | C | D | 
| 1 | Mã | Tên | Lớp | 
| 2 | hv01 | Tran A | Lap trinh C | 
| 3 | hv02 | Le C | JSon | 
| 4 | hv03 | Thi Hoa | SQL Server | 
Dim arr As Variant
arr = Range("B2:D4").Value
Như vậy dữ liệu vùng B2 đến D4 đã thành 1 mảng arr
Để code vba excel linh hoạt hơn ta sử dụng hàm lấy dòng đầu và dòng cuối
 Dim arr As Variant
    Row_start = ActiveSheet.Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlNext).Row + 1
    Row_end = ActiveSheet.Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Row
    arr = Range("B" & Row_start & ":B" & Row_end).Value
  
Code đẩy đủ chuyển vùng thành mảng vba excel
 Dim arr As Variant
    Row_start = ActiveSheet.Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlNext).Row + 1
    Row_end = ActiveSheet.Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Row
    arr = Range("B" & Row_start & ":B" & Row_end).Value
    For i = 1 To UBound(arr)
       MsgBox arr(i, 1)
    Next
Chuyển vùng thành mảng trong VBA Excel