Sau đó nhấn Ctr+Shift+Enter=OFFSET(E$3,MATCH($A16&$B16&$C16&$D16,$A$4:$A$9&$B$4:$B$9&$C$4:$C$9&$D$4:$D$9,0),0)
Tại E16 bạn nhập công thức sau
Sau đó nhấn Ctr+Shift+Enter
Bạn thử kéo xem nó cho ra kết quả là gì nha!Sau đó có thể dùng cách kéo ô E16 sang các ô khác đển copy công thức này không bạn?
Trước hết bạn hiểu $A$4:$A$9&$B $4:$B$9&$C$4:$C$9&$D$4:$D$9 là 1 mảng gồm các phần tử {A4&B4&C4&D4;A5&B5&C5&D5;...;A9&B9&C9&D9}Nhân tiện, nhờ bạn giải thích hộ dòng công thức trên đây có ý nghĩa như thế nào để mình áp dụng cho những trường hợp khác.
Cách của bạn nếu có ai đó trùng tên nhau thì sẽ không tìm được tất cả dữ liệu của những người đó.Bạn tham khảo thử xem có đúng như ý của bạn không?
Nếu có gì thì cho mình ý kiến nhe
Bạn dùng hàm SUMPRODUCT xem sao nhé!Mình có làm theo cách của bạn hoangminhtien nhưng mình đang gặp phải một vấn đề chưa xử lý được, đó là nếu như trong mảng dữ liệu xuất hiện nhiều lần một dữ liệu nào đó thì trong phần kết quả tìm kiếm và xuất ra dữ liệu tổng hợp lại không thực thi như mong muốn. Mình không hiểu nguyên nhân tại sao? Cụ thể các bạn xem file gửi kèm và giúp đỡ mình nhé.
Xin cảm ơn nhiều.
E16 =SUMPRODUCT(($A$4:$A$9&$B$4:$B$9&$C$4:$C$9&$D$4:$D$9=$A16&$B16&$C16&$D16)*(E$4:E$9))
Bạn dùng hàm SUMPRODUCT xem sao nhé!
Mã:E16 =SUMPRODUCT(($A$4:$A$9&$B$4:$B$9&$C$4:$C$9&$D$4:$D$9=$A16&$B16&$C16&$D16)*(E$4:E$9))
Công thức E3 của bạnCảm ơn bạn MinhCong. Mình còn một băn khoăn nhỏ nữa là nếu dữ liệu ở một Sheet khác với Sheet chứa kết quả tìm kiếm thì hàm SUMPRODUCT lại cho giá trị khác hoặc mình viết sai câu lệnh của hàm. Nhờ bạn chỉ giáo tiếp nhé. Mình gửi kèm file để bạn xem giúp.
Xin cảm ơn.
phải chỉnh thành=SUMPRODUCT((Sheet1!$A$4:$A$9&Sheet1!$B$4:$B$9&Sheet1!$C$4:$C$9&Sheet1!$D$4:$D$9=Sheet2!$A3&Sheet2!$B3&Sheet2!$C3&Sheet2!$D3)*(Sheet1!E$4:G$9))
=SUMPRODUCT((Sheet1!$A$4:$A$9&Sheet1!$B$4:$B$9&Sheet1!$C$4:$C$9&Sheet1!$D$4:$D$9=Sheet2!$A3&Sheet2!$B3&Sheet2!$C3&Sheet2!$D3)*(Sheet1!E$4:E$9))
Tại ô E4 của sheet2 Bạn nhập công thức sau:Chào các bạn,
Mình thấy cách dùng công thức {=OFFSET(E$3,MATCH($A16&$B16&$C16&$D16,$A$4:$A$9&$B $4:$B$9&$C$4:$C$9&$D$4:$D$9,0),0)} của bạn hoangminhtien xử lý được vấn đề không cần phải xắp xếp các cột kết quả dữ liệu ở Sheet kết quả theo thứ tự giống với Sheet dữ liệu đầu vào, nhưng lại không thực thi được khi Sheet dữ liệu đầu vào có nhiều bản ghi trùng lặp về trường đặc tính bản ghi (Tên, địa chỉ, nghề nghiệp, chức danh, ...). Cách dùng hàm SUMPRODUCT của bạn MinhCong thì bắt buộc phải xắp xếp các cột kết quả dữ liệu theo thứ tự giống với Sheet dữ liệu đầu vào, nhưng lại có thể tìm kiếm nếu như có nhiều bản ghi trùng lặp về trường đặc tính. Vậy có cách nào làm được cả hai không các bạn. Ý mình là:
- Dữ liệu đầu vào có nhiều bản ghi trùng lặp ở các trường đặc tính: Họ và tên, Lớp, Quê quán
- Các cột dữ liệu ở Sheet kết quả không xắp xếp theo thứ tự giống như ở trong Sheet dữ liệu đầu vào
Mình gửi kèm file minh họa nhé.
Xin cảm ơn các bạn giúp đỡ.
SUMPRODUCT((Sheet1!$A$4:$A$100&Sheet1!$B$4:$B$100&Sheet1!$C$4:$C$100&Sheet1!$D$4:$D$100=$A4&$B4&$C4&$D4)*(INDIRECT(ADDRESS([COLOR=Red]4[/COLOR];MATCH(E$3;Sheet1!$A$3:$J$3;0);4;1;"Sheet1")&":"&ADDRESS([COLOR=Red]100[/COLOR];MATCH(E$3;Sheet1!$A$3:$J$3;0);4;1))))
Do công thức đó là công thức mảng, khi nhập xong công thức Bạn phải kết thúc bằng tổ hợp phím Ctrl+Shift+Enterchào mọi người!
sao mình dùng công thức của anh hoangminhtien thì lại cho ra giá trị value.
Tại ô E4 của sheet2 Bạn nhập công thức sau:
Để ý số 4 và 100 trong công thức ám chỉ danh sách học sinh bắt đầu từ dòng thứ 4 và kết thúc ở dòng 100Mã:SUMPRODUCT((Sheet1!$A$4:$A$100&Sheet1!$B$4:$B$100&Sheet1!$C$4:$C$100&Sheet1!$D$4:$D$100=$A4&$B4&$C4&$D4)*(INDIRECT(ADDRESS([COLOR=red]4[/COLOR];MATCH(E$3;Sheet1!$A$3:$J$3;0);4;1;"Sheet1")&":"&ADDRESS([COLOR=red]100[/COLOR];MATCH(E$3;Sheet1!$A$3:$J$3;0);4;1))))
Đúng rồi đấy Bạn. (Những số 4 và 100 kia cũng vậy)Xin cho mình hỏi thêm:
- "Số 4 và 100 trong công thức ám chỉ danh sách học sinh bắt đầu từ dòng thứ 4 và kết thúc ở dòng 100" là trong danh sách tổng số học sinh đúng không? Hay là trong danh sách kết quả tìm kiếm.
- Trong công thức mình cũng thấy các số 4 khác nữa thì không hiểu các số 4 này có ý nghĩa gì và có phải là những số 4 kia không?
Xin cảm ơn.
Đúng rồi đấy Bạn. (Những số 4 và 100 kia cũng vậy)
Công thức của Bạn:Cảm ơn bạn.
Bạn giúp mình câu hỏi trước đó với:
"Thêm một điều mình muốn học hỏi nữa, đó là hàm SUMPRODUCT chỉ trả về kết quả là dữ liệu số, nếu là dữ liệu text thì nó sẽ báo lỗi #VALUE (mình gửi kèm file minh họa).
Vậy có hàm nào để lấy dữ liệu là text không các bạn?"
Ngoài ra, khi mình áp dụng vào công việc thì bị lỗi như sau. Mình loay hoay chưa biết làm thế nào. Nhờ các anh chị em giúp đỡ với. Mình gửi lèm file ở đây.
Cảm ơn các anh chị em nhiều.
SUMPRODUCT((Sheet1!$B$2:$B$270&Sheet1!$C$2:$C$270=$B3&$C3)*(INDIRECT(ADDRESS(2;MATCH(D$2;Sheet1![COLOR=Red]$D$1[/COLOR]:$AU$1;0);2;1;"Sheet1")&":"&ADDRESS(270;MATCH(D$2;Sheet1![COLOR=Red]$D$1[/COLOR]:$AU$1;0);2;1))))
SUMPRODUCT((Sheet1!$B$2:$B$270&Sheet1!$C$2:$C$270=$B3&$C3)*(INDIRECT(ADDRESS(2;MATCH(D$2;Sheet1![COLOR=Red]$A$1[/COLOR]:$AU$1;0);2;1;"Sheet1")&":"&ADDRESS(270;MATCH(D$2;Sheet1![COLOR=Red]$A$1[/COLOR]:$AU$1;0);2;1))))