vantrinh107
Thành viên mới

- Tham gia
- 28/11/07
- Bài viết
- 48
- Được thích
- 4
Thử sửa công thức thành như vầy xem, chú ý là dữ liệu cột G của bạn có tới dòng 51 chứ không phải 45 nhé.Chào các anh chị em.
Do muốn tăng tốc độ làm việc của E xcl, mình muốn tạo 1 names động ...mà chưa tìm ra hướng giải quyết tốt nhất nên nhờ các anh chị giúp dùm
=OFFSET($G$11;;;MATCH(REPT("Z";250);$G$11:$G$1000))
Sửa công thức ở DS_1 thành vầy nhé:Chào các anh chị em.
Do muốn tăng tốc độ làm việc của E xcl, mình muốn tạo 1 names động ...mà chưa tìm ra hướng giải quyết tốt nhất nên nhờ các anh chị giúp dùm
=OFFSET(Sheet1!$G$10,1,,MATCH(2,1/(1-(Sheet1!$G$10:$G$1006="")))-1,)
Công thức này không xài được vì cột G có giá trị rổng do công thức trả vềThử sửa công thức thành như vầy xem, chú ý là dữ liệu cột G của bạn có tới dòng 51 chứ không phải 45 nhé.
Chỉnh lại dấu phẩy nếu máy của bạn xài dấu phẩy trong công thức.PHP:=OFFSET($G$11;;;MATCH(REPT("Z";250);$G$11:$G$1000))
Danh sách này chưa tối ưu do còn khoảng trắng ở cuối danh sách.Thử sửa công thức thành như vầy xem, chú ý là dữ liệu cột G của bạn có tới dòng 51 chứ không phải 45 nhé.
Chỉnh lại dấu phẩy nếu máy của bạn xài dấu phẩy trong công thức.PHP:=OFFSET($G$11;;;MATCH(REPT("Z";250);$G$11:$G$1000))
=IF(COUNTA($G$10:G10)>COUNTA($K$11:$K$1000),"",INDEX($K$11:$K$1000,SMALL(IF($K$11:$K$1000<>"",ROW($K$1:$K$990),""),ROW(1:1))))
=OFFSET(Sheet1!$G$11,,,MATCH(10^6,CODE(Sheet1!$G$11:$G$1000)),)
Thuật toán này gần giống với thuật toán khi dùng LOOKUP trong bài này:=OFFSET(Sheet1!$G$10,1,,MATCH(2,1/(1-(Sheet1!$G$10:$G$1006="")))-1,)
Rất cám ơn anh về sự nhiệt tình này.A chỉ đúng chỗ mà em cần hỏi luôn.
A có thể giải thích ý nghĩa chỗ hàm Match được không anh.
Dùng COUNTA($K$11:$K$2000) là được rồi, đâu cần đến MATCH rồi lại CODE tùm lum thế kia chứ?Tạo name DS_1:
Mã:=OFFSET(Sheet1!$G$11,,,MATCH(10^6,CODE(Sheet1!$G$11:$G$1000)),)