công thức tìm lọc lấy các lot trùng lặp thỏa mãn điều kiện

Liên hệ QC

soingaytho

Thành viên mới
Tham gia
14/6/14
Bài viết
32
Được thích
3
Chào các anh/chị
Anh/chị, giúp em làm cách nào để lấy ra LOT "to" mà trong đó tất cả các lot "nhỏ" đến tháng 10 đều làm xong
Em không biết ghi như nào cho dễ hiểu nên em gửi file anh/chị xem giúp em ạ
Em cảm ơn!
 

File đính kèm

  • REPORT-10.2018 - Copy.xls
    826 KB · Đọc: 18
Chào các anh/chị
Anh/chị, giúp em làm cách nào để lấy ra LOT "to" mà trong đó tất cả các lot "nhỏ" đến tháng 10 đều làm xong
Em không biết ghi như nào cho dễ hiểu nên em gửi file anh/chị xem giúp em ạ
Em cảm ơn!
điều kiện gì để xác định lot đó là đã làm xong vậy bạn
 
Đại khái điều kiện để gọi là xong khi mà các lot đếm được các lần( yêu cầu <= đã thực hiện) = đúng số lượng đếm được theo lot
hoặc là cột Bal có các số âm = đúng số lượng đếm được theo lot
 
Lần chỉnh sửa cuối:
Chào các anh/chị
Anh/chị, giúp em làm cách nào để lấy ra LOT "to" mà trong đó tất cả các lot "nhỏ" đến tháng 10 đều làm xong
Em không biết ghi như nào cho dễ hiểu nên em gửi file anh/chị xem giúp em ạ
Em cảm ơn!
1/ Sheet "Data": Tạo thêm cột phụ để đánh "Số thứ tự" lô nào thỏa điều kiện, và cột "Tháng kết thúc":
Mã:
A4=IF(COUNTIF($C$4:$C4,$C4)=1,IF(COUNTIFS($C$4:$C$2003,$C4,$G$4:$G$2003,">0")+(AGGREGATE(14,6,$B$4:$B$2003/($C$4:$C$2003=$C4),1)<>MONTH(Report!$A$2)),,MAX($A$3:A3)+1),)
B4=IFERROR(MONTH(LOOKUP(10^10,$I$3:$T$3/($I4:$T4>0))),)
Enter, fill xuống.

2/ Sheet "Report":
Mã:
A4=IF(ROW(A1)<=MAX(Data!$A$4:$A$2003),ROW(A1),"")
B4=IF($A4="","",VLOOKUP($A4,Data!$A$4:$C$2003,3,))
C4=IF($A4="","",VLOOKUP(B4,Data!$C$4:$F$1992,3,))
D4=IF($A4="",,SUMIF(Data!$C$4:$C$2003,$B4,Data!$F$4:$F$2003))
Enter, fill xuống.

Thân
 

File đính kèm

  • REPORT-10.2018 - Copy.xls
    1.2 MB · Đọc: 21
nếu thoả mãn điều kiện thì gọi lotno đó ra à
vâng ạ, nếu thoả mãn đk thì lấy ra lot đó ra (nhưng mà là tất cả các lot "nhỏ" đều phải thoả mãn đk "Bal<=0, và chỉ cần 1 lot nhỏ có dữ liệu >0 trong t10 cungx được ạ)
Lot em muốn lấy là LOT to (7ký tự đầu tiên cột Lot no)
 
Không diễn tả được cái có trong đầu của chính mình thì lạ thật.

Tôi không chơi trò "đoán ý đồng đội", "thông tin nhỏ giọt", vậy tôi chỉ làm 1 lần với điều kiện tôi tự đặt ra. Đúng hay không đúng với điều kiện của tác giả thì cũng thôi.

Yêu cầu: "Lấy ra tất cả các LOT "to" mà các LOT "nhỏ" của nó có giá trị < 0 tại cột Bal, và đồng thời có ít nhất 1 LOT "nhỏ" với giá trị > 0 tại cột tháng 10"

Thêm 1 và chỉ 1 cột phụ là A trong sheet "dữ liệu nguồn".
Công thức cho 'dữ liệu nguồn'!A4
Mã:
=IF(COUNTIF(B$4:B4;B4)>1;"";IF((COUNTIFS(B$4:B$2000;B4;G$4:G$2000;"<0")=COUNTIF(B$4:B$2000;B4))+(COUNTIFS(B$4:B$2000;B4;R$4:R$2000;">0")>0)<2;"";ROW(B4)))
Enter và sao chép xuống dưới.


Công thức cho 'kết quả cần'!B4
Mã:
=INDEX('dữ liệu nguồn'!B$1:B$2000;SMALL('dữ liệu nguồn'!A$1:A$2000;ROWS(A$1:A1)))

Công thức cho 'kết quả cần'!C4
Mã:
=VLOOKUP(B4;'dữ liệu nguồn'!$B$4:$E$2000;4;0)

Công thức cho 'kết quả cần'!D4
Mã:
=SUMIF('dữ liệu nguồn'!B$4:B$2000;'kết quả cần'!B4;'dữ liệu nguồn'!F$4:F$2000)

Các công thức kết thúc bằng Enter và sao chép xuống dưới.
------------
Trong kết quả của chủ chủ đề không có vd. 18M07028 (đánh dấu "x" trong tập tin đính kèm) mặc dù thỏa điều kiện do tôi đặt ra. Phải chăng tác giả đã có thiếu sót hoặc có điều kiện khác.

Nhưng thôi, tôi làm 1 lần thôi.
 

File đính kèm

  • REPORT-10.2018 - Copy.xls
    1.2 MB · Đọc: 13
Dạ điều kiên là cột "Bal pcs" <=0 và cột tháng 10 có dữ liệu >0 (nghĩa là tổng số lượng làm được >= tổng số oder)
Ủa! vậy bài #4 trích lục như điều kiện của bạn, vẫn chưa phù hợp ý bạn sao!?
Bạn chỉ cần chọn các tháng bạn muốn tại Sheet 'Report'!A2 là nó sẽ liệt kê các lô kết thúc phù hợp tháng đó:
TrichLuc.png

Các bảng liệt kê trên còn thiếu sót chỗ nào theo như ý bạn!?

Thân
 

File đính kèm

  • REPORT-10.2018.xls
    1.2 MB · Đọc: 9
Ủa! vậy bài #4 trích lục như điều kiện của bạn, vẫn chưa phù hợp ý bạn sao!?
Bạn chỉ cần chọn các tháng bạn muốn tại Sheet 'Report'!A2 là nó sẽ liệt kê các lô kết thúc phù hợp tháng đó:
View attachment 207309

Các bảng liệt kê trên còn thiếu sót chỗ nào theo như ý bạn!?
hiii dạ em cảm ơn anh ạ. hiiii
bài này anh làm đúng ý em rồi đó ạ, mà tại công thưc cột "tt thoả đk" em chưa hiểu lắm, em đang nghiên cứu thêm, ạ
tại em không giỏi excel lắm nên muốn xem thêm xem có công thức nào đơn giản chút không thôi ạ hiiiiii

Thân
Bài đã được tự động gộp:

Không diễn tả được cái có trong đầu của chính mình thì lạ thật.

Tôi không chơi trò "đoán ý đồng đội", "thông tin nhỏ giọt", vậy tôi chỉ làm 1 lần với điều kiện tôi tự đặt ra. Đúng hay không đúng với điều kiện của tác giả thì cũng thôi.

Yêu cầu: "Lấy ra tất cả các LOT "to" mà các LOT "nhỏ" của nó có giá trị < 0 tại cột Bal, và đồng thời có ít nhất 1 LOT "nhỏ" với giá trị > 0 tại cột tháng 10"

Thêm 1 và chỉ 1 cột phụ là A trong sheet "dữ liệu nguồn".
Công thức cho 'dữ liệu nguồn'!A4
Mã:
=IF(COUNTIF(B$4:B4;B4)>1;"";IF((COUNTIFS(B$4:B$2000;B4;G$4:G$2000;"<0")=COUNTIF(B$4:B$2000;B4))+(COUNTIFS(B$4:B$2000;B4;R$4:R$2000;">0")>0)<2;"";ROW(B4)))
Enter và sao chép xuống dưới.


Công thức cho 'kết quả cần'!B4
Mã:
=INDEX('dữ liệu nguồn'!B$1:B$2000;SMALL('dữ liệu nguồn'!A$1:A$2000;ROWS(A$1:A1)))

Công thức cho 'kết quả cần'!C4
Mã:
=VLOOKUP(B4;'dữ liệu nguồn'!$B$4:$E$2000;4;0)

Công thức cho 'kết quả cần'!D4
Mã:
=SUMIF('dữ liệu nguồn'!B$4:B$2000;'kết quả cần'!B4;'dữ liệu nguồn'!F$4:F$2000)

Các công thức kết thúc bằng Enter và sao chép xuống dưới.
------------
Trong kết quả của chủ chủ đề không có vd. 18M07028 (đánh dấu "x" trong tập tin đính kèm) mặc dù thỏa điều kiện do tôi đặt ra. Phải chăng tác giả đã có thiếu sót hoặc có điều kiện khác.

Nhưng thôi, tôi làm 1 lần thôi.
Dạ đúng rồi ạ, em xin cảm ơn ạ
Bài đã được tự động gộp:

là kết quả như bài cuả anh "Batman" với anh "Phan Thế Hiệp" ấy ạ hiii
 
Lần chỉnh sửa cuối:
hiii dạ em cảm ơn anh ạ. hiiii
bài này anh làm đúng ý em rồi đó ạ, mà tại công thưc cột "tt thoả đk" em chưa hiểu lắm, em đang nghiên cứu thêm, ạ
tại em không giỏi excel lắm nên muốn xem thêm xem có công thức nào đơn giản chút không thôi ạ hiiiiii
Sheet Data có hai cột phụ:
  1. Cột "Stt thỏa điều kiện": nhằm đánh số thứ tự từ 1 đến n cho các lô mã "lớn" (cột C) với việc lọc như sau:
    • COUNTIFS($C$4:$C$2003,$C4,$G$4:$G$2003,">0"): Nếu ứng với lô mã "lớn" mà dòng công thức đang xử lý, chỉ cần có bất kỳ "Bal" của các lô mã "nhỏ" nào mà >0, thì nó không tạo "Stt", tức trong số các lô mã "nhỏ" vẫn còn chưa hoàn thành xong. (coi như xử lý theo yêu cầu Bal<=0)
    • AGGREGATE(14,6,$B$4:$B$2003/($C$4:$C$2003=$C4),1)<>MONTH(Report!$A$2): Hoặc nếu chọn ra tháng cuối cùng lớn nhất hoàn thành của toàn bộ các lô mã "nhỏ" thuộc lô mã "lớn" mà không khớp với tháng mình đang yêu cầu lọc ra để báo cáo. Ví dụ: bạn muốn tổng hợp chỉ những lô mã "lớn" nào trong tháng 08 đã hoàn thành, tức có thể những lô này có chứa các lô mã "nhỏ" được sản xuất và hoàn thành (Bal<=0) lần lượt, dù trải qua nhiều tháng như tháng 6, 7, 8, tuy nhiên chỉ xét lô nhỏ nào bất kỳ hoàn thành đến tháng 8, tức không lấn qua tháng 9, hay tháng 10. Với câu lệnh này, nếu nó không khớp với tháng yêu cầu (<>MONTH(Report!$A$2)), tức toàn bộ các lô mã "nhỏ" có tháng cuối cùng hoàn thành khác tháng 8, thì nó cũng không tạo "Stt".
    • Ngược lại, nếu nó không thỏa 2 điều kiện trên thì sẽ tạo ra "Stt thỏa điều kiện": MAX($A$3:A3)+1.
    • Bạn có thể xem để tìm hiểu bằng việc: Ví dụ: theo dõi các mã tháng 10, filter cột "LOT", ví dụ: chọn mã "18M08035", có 6 "lot" nhỏ, trong đó có 4 mã đã hoàn thành trong tháng 9, 2 mã sản xuất từ tháng 9, nhưng đến tháng 10 mới hoàn thành, vì vậy mã "18M08035" được liệt kê trong "Danh sách các LOT kết thúc trong tháng 10/2018", với "Stt thỏa điều kiện" được tạo là 1.
  2. Cột "Tháng kết thúc": =IFERROR(MONTH(LOOKUP(10^10,$I$3:$T$3/($I4:$T4>0))),), nhằm trích lục ra theo từng lô mã "nhỏ" tháng cuối cùng đã và đang sản xuất ra nó, làm cơ sở cho Cột A (đã nói trên) tổng hợp và chọn ra tháng hoàn thành lớn nhất trong cùng lô mã "lớn".
Nhờ có hai cột phụ này, khi bạn thay đổi Sheet Report!A2: tháng 8, tháng 9, hay tháng 10, thì bảng liệt kê phía dưới dựa trên "Stt thỏa điều kiện" đã tìm ra, và chỉ cần xử lý bằng những hàm trích lục đơn giản như Vlookup() hay Sumif() là giải quyết được yêu cầu cùng linh động biến đổi theo từng tháng.

Thân
 

File đính kèm

  • REPORT-10.2018.xls
    1.2 MB · Đọc: 10
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom