1. Không phải bài toán nào cũng dùng mảng được. Từ cơ sở dữ liệu ban đầu của bài toán:
- phân tích sự tương quan giữa dữ liệu nguồn và kết quả
- Tìm thuật toán giải quyết
- Dùng phương tiện phù hợp để thực hiện thuật toán.
Nghĩa là, sử dụng mảng hay cái gì khác,
chỉ là phương tiện, tức là cái cuối cùng cần quan tâm.
2. Bài toán này, Nếu dùng mảng được, hãy làm từng bước:
- Xác định kích thước mảng nguồn 1 và mảng nguồn 2.
- Xác định mảng kết quả:
- [*=1]Xác định kích thước từng chiều tương ứng với kích thước chiều nào, của mảng nguồn nào[*=1]Xác định sự tương quan dữ liệu: giá trị thành phần dòng i cột j của mảng kết quả tính từ dòng nào cột nào của 2 mảng nguồn. Có thể dòng tương ứng cột, hoặc dòng tương ứng dòng.[*=1]Tính toán thế nào từ các giá trị tương ứng đó
- Tạo mảng kết quả, duyệt qua từng thành phần của mảng nguồn 1, xem xét giá trị tương ứng của mảng nguồn 2, tính ra giá trị thành phần tương ứng của mảng kết quả. GHi nhớ duyệt dòng trước cột sau, hoặc cột trước dòng sau, là tuỳ theo phân tích trong bước trên.
Phân tích không ra, thì tìm cách khác. CHứ VBA không chỉ có mảng.
3. Kết quả của code đã viết (xem kết quả thôi, không cần xem code) cho thấy không ngó ngàng gì đến bảng nguồn 2. Nghĩa là sai từ lý luận phân tích, chưa nói tới giải thuật, mà đã vội chọn phương tiện. Giống như đi đến 1 xứ chưa biết ở đất liền hay ở đảo, xứ nóng hay xứ tuyết, mà đã chọn trước là sẽ dùng ô tô thông thường.