Sub TestArray()
Dim A(1 To 15, 1 To 6) As Long
Dim r As Long, c As Long, k As Long
Dim arrRow(10 To 15, 1 To 1), arrCol(1 To 6)
' mảng các chỉ số dòng
For k = 10 To 15
arrRow(k, 1) = k
Next k
' mảng các chỉ số cột
For k = 1 To 6
arrCol(k) = k
Next k
k = 0
' nhập giá trị vào mảng A
For r = 1 To 15
For c = 1 To 6
k = k + 1
A(r, c) = k
Next c
Next r
' nhập mảng A xuống sheet để tiện theo dõi mảng 6 dòng
Range("A1").Resize(15, 6) = A
' nhập mảng có từ 6 dòng cuối của A xuống sheet, dùng các hằng số mảng
Range("H1").Resize(6, 6) = Application.Index(A, [{10;11;12;13;14;15}], Array(1, 2, 3, 4, 5, 6))
' nhập mảng có từ 6 dòng cuối của A xuống sheet, dùng mảng các chỉ số dòng và mảng các chỉ số cột
Range("H10").Resize(6, 6) = Application.Index(A, arrRow, arrCol)
' Tương tự trên sheet: chọn vùng H1:M6 -> nhập công thức
' =INDEX(A1:F15,{10,11,12,13,14,15},{1\2\3\4\5\6}) -> kết thúc bằng Ctrl + Shift + Enter.
' Về dấu "\" có thể trên mỗi máy khác nhau. Ở đâu đó hãy nhập công thức
' =SUM(A1:B2) -> trên thanh công thức bôi đen A1:B2 -> nhấn F9. Nhìn thấy
' giữa 1 và 2 là dấu gì thì thay nó vào vị trí các dấu "\" trong trong công thức ở trên.
' ---------------
' Phần thưởng thêm, miễn phí
' 1. Nhập mảng các phần tử từ các dòng 7, 8, 11, 14, và từ các cột 1, 3, 5 - mảng các phần tử ở
' các điểm giao của các dòng 7, 8, 11, 14 và các cột 1, 3, 5
Range("A20").Resize(4, 3) = Application.Index(A, [{7;8;11;14}], Array(1, 3, 5))
' 2. Lấy vùng từ dòng 7 đến 10, cột từ 3 đến 5
Range("E20").Resize(4, 3) = Application.Index(A, [{7;8;9;10}], Array(3, 4, 5))
' Tương tự trên sheet: chọn E20:G23 -> nhập công thức
' =INDEX(A1:F15, {7,8,9,10}, {3\4\5}) -> kết thúc bằng Ctrl + Shift + Enter.
End Sub