Nguyễn Danh Phương
Nguyễn Danh Phương
Thảo luận 1 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 433 lượt xem

2 ng thức từ phút 0648 trở đi Range(A1) theo như các bài trước có nghĩa

Xin chào. Cho mình hỏi 2 công thức từ phút 06.48 trở đi. Range(A1) theo như các bài trước có nghĩa là ô A1, range (A1:C10) có nghĩa là vùng A1:C10. Nhưng trong video mình lại thấy khi chạy code với 2 range này thì lại ra những ô+range khác?

Thảo luận 1 câu trả lời
Lượt xem 433 lượt xem
Vỗ tay vỗ tay
Nguyễn Danh Phương 09:01 - Jan 06, 2021

Ở phần này có sử dụng cách viết Offset kèm theo Range. Tức là bạn có thể di chuyển tới 1 vị trí khác, tính từ vị trí Range ban đầu làm mốc.

OFFSET trong VBA cũng gần giống với hàm OFFSET của Excel, cho phép bạn di chuyển từ vị trí ban đầu sang 1 vị trí khác dựa trên việc tịnh tiến đi một số lượng dòng, cột nhất định.

Khi mới học về VBA bạn sẽ thấy khó hiểu với việc dùng offset, nhưng khi viết code nhiều bạn sẽ thấy offset có rất nhiều tác dụng:

- Giúp bạn viết code nhanh hơn (không cần tìm range mới mà chỉ cần giữ range cũ rồi tịnh tiến đến điểm mới)

- Giúp bạn dễ tìm ra điểm mới hơn (xác định 2 biến số dòng, số cột cần tịnh tiến)

- Dễ kết hợp với vòng lặp (cho 2 biến trong hàm offset) => sẽ dễ viết tọa độ Range hơn khi viết vòng lặp theo cột.

Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông