Lấy ngày hạn sử dụng theo mã sản phẩm và kho

Liên hệ QC

Emyeuexcel

Thành viên thường trực
Tham gia
9/6/16
Bài viết
269
Được thích
26
Chào anh chị em GPE,

Mình có file kèm, anh chị vui lòng giúp mình công thức nào lấy được:
- số lượng theo các ngày hạn sử dụng, theo điều kiện là cột tình trạng Normal, hoặc Hold- Cùng kho (site), cùng mã sản phẩm- Lấy ra các ngày tương ứng với số lượng đó.
Vì dữ liệu nó trùng dòng- có mã trùng đến 4 dòng cho 4 số lượng khác và ngày khác nhau.
Mình có ví dụ bên cạnh.
Rất mong anh chị em giúp mình với nhé.
Chân thành cảm ơn anh chị!
 

File đính kèm

  • Lọc ngày nhập khác nhau_Cùng mã sp_cùng kho.xlsx
    116.3 KB · Đọc: 14
Chào anh chị em GPE,

Mình có file kèm, anh chị vui lòng giúp mình công thức nào lấy được:
- số lượng theo các ngày hạn sử dụng, theo điều kiện là cột tình trạng Normal, hoặc Hold- Cùng kho (site), cùng mã sản phẩm- Lấy ra các ngày tương ứng với số lượng đó.
Vì dữ liệu nó trùng dòng- có mã trùng đến 4 dòng cho 4 số lượng khác và ngày khác nhau.
Mình có ví dụ bên cạnh.
Rất mong anh chị em giúp mình với nhé.
Chân thành cảm ơn anh chị!
Dùng code vba chạy ok.okok
 
Chào anh chị em GPE,

Mình có file kèm, anh chị vui lòng giúp mình công thức nào lấy được:
- số lượng theo các ngày hạn sử dụng, theo điều kiện là cột tình trạng Normal, hoặc Hold- Cùng kho (site), cùng mã sản phẩm- Lấy ra các ngày tương ứng với số lượng đó.
Vì dữ liệu nó trùng dòng- có mã trùng đến 4 dòng cho 4 số lượng khác và ngày khác nhau.
Mình có ví dụ bên cạnh.
Rất mong anh chị em giúp mình với nhé.
Chân thành cảm ơn anh chị!
Bạn dùng bản excel nào vậy? Mà bạn thử gửi file làm cho nhiều mã xem bố cục bạn trình bày ra làm sao?
 
Gửi bạn, mình thì chỉ làm thủ công thế này:
1.tạo 1 cột link


1665451045958.png


Chỗ quantity mình điền công thức này:
=IFERROR(INDEX($G$3:$G$1353,MATCH(1,INDEX(($J11&$K$9=$A$3:$A$1353)*(0=COUNTIFS($J11:J11,$G$3:$G$1353)),0),0)),"")

1665451074200.png
Chỗ Ngày mình điền công thức này:

=IFERROR(INDEX($F$3:$F$1353,MATCH(1,INDEX(($J11&$K$9=$A$3:$A$1353)*(0=COUNTIFS($N11:N11,$F$3:$F$1353)),0),0)),"")
1665451122707.png
 

File đính kèm

  • Lọc ngày nhập khác nhau_Cùng mã sp_cùng kho.xlsx
    220.8 KB · Đọc: 5
Gửi bạn, mình thì chỉ làm thủ công thế này:
1.tạo 1 cột link


View attachment 281949


Chỗ quantity mình điền công thức này:
=IFERROR(INDEX($G$3:$G$1353,MATCH(1,INDEX(($J11&$K$9=$A$3:$A$1353)*(0=COUNTIFS($J11:J11,$G$3:$G$1353)),0),0)),"")

View attachment 281950
Chỗ Ngày mình điền công thức này:

=IFERROR(INDEX($F$3:$F$1353,MATCH(1,INDEX(($J11&$K$9=$A$3:$A$1353)*(0=COUNTIFS($N11:N11,$F$3:$F$1353)),0),0)),"")
View attachment 281951
Bạn thử ngẫm lại xem, vẫn xảy ra trường hợp sai sót
 
Gửi bạn, mình thì chỉ làm thủ công thế này:
1.tạo 1 cột link


View attachment 281949


Chỗ quantity mình điền công thức này:
=IFERROR(INDEX($G$3:$G$1353,MATCH(1,INDEX(($J11&$K$9=$A$3:$A$1353)*(0=COUNTIFS($J11:J11,$G$3:$G$1353)),0),0)),"")

View attachment 281950
Chỗ Ngày mình điền công thức này:

=IFERROR(INDEX($F$3:$F$1353,MATCH(1,INDEX(($J11&$K$9=$A$3:$A$1353)*(0=COUNTIFS($N11:N11,$F$3:$F$1353)),0),0)),"")
View attachment 281951
Chào bạn,

Mình thấy công thức bạn ok đó- Nhưng không biết bạn xét đến cột C là site chưa vì mã sản phẩm nó trùng cho cả 2 site 804 và 809 (cột C).
Và mình cũng lấy thêm cho status là Hold nữa, phải lồng IF vào trước MATCH phải không?
Mong bạn xem lại giúp!
Bài đã được tự động gộp:

Dùng code vba chạy ok.okok
Chào bạn,

Cảm ơn bạn gợi ý! mà mình không biết code VBA.
Nếu bạn biết thì giúp mình nhé!
Đa tạ ah!
Bài đã được tự động gộp:

Bạn dùng bản excel nào vậy? Mà bạn thử gửi file làm cho nhiều mã xem bố cục bạn trình bày ra làm sao?
Chào bạn,
Cảm ơn bạn phản hồi!
Mình dùng excel 2013.
Bố cục muốn trình bày thì giống như bạn Phương Thanh 103 đã làm.

1665463004270.png
Mong bạn xem giúp mình, vì xét thêm cột C, site 804 và 809 nữa. Chứ code sp nó lặp lại trong 2 site này.
 
Lần chỉnh sửa cuối:
Không nên dùng if. Mình ko đọc kỹ đề dẫn tới thiếu site. Nhưng nếu data bạn có nhiều điều kiện như vậy thì nên bố trí các điều kiện thành cột chứ ko nên Merge cell hoặc để ô điều kiện ở vị trí đặc biệt.

mình xin phép tạo thêm cột cho data:

1. Vân tạo cột link, thêm site

1665463602296.png


2. Tạo 2 cột Status và site để link công thức
1665463646984.png
3. Chỗ Số lượng mình dùng công thức này:

=IFERROR(INDEX($G$3:$G$1353,MATCH(1,INDEX(($J11&$H11&$I11=$A$3:$A$1353)*(0=COUNTIFS($J11:J11,$G$3:$G$1353)),0),0)),"")
1665463692521.png

4.Chỗ Ngày mình dùng công thức này:

=IFERROR(INDEX($F$3:$F$1353,MATCH(1,INDEX(($J11&$H11&$I11=$A$3:$A$1353)*(0=COUNTIFS($N11:N11,$F$3:$F$1353)),0),0)),"")

=>nếu cần thay đổi site và status thì bạn add code và điền site+status mong muốn ở cột H và J
1665463869983.png
 

File đính kèm

  • Lọc ngày nhập khác nhau_Cùng mã sp_cùng kho.xlsx
    228.7 KB · Đọc: 2
Không nên dùng if. Mình ko đọc kỹ đề dẫn tới thiếu site. Nhưng nếu data bạn có nhiều điều kiện như vậy thì nên bố trí các điều kiện thành cột chứ ko nên Merge cell hoặc để ô điều kiện ở vị trí đặc biệt.

mình xin phép tạo thêm cột cho data:

1. Vân tạo cột link, thêm site

View attachment 281962


2. Tạo 2 cột Status và site để link công thức
View attachment 281963
3. Chỗ Số lượng mình dùng công thức này:

=IFERROR(INDEX($G$3:$G$1353,MATCH(1,INDEX(($J11&$H11&$I11=$A$3:$A$1353)*(0=COUNTIFS($J11:J11,$G$3:$G$1353)),0),0)),"")
View attachment 281964

4.Chỗ Ngày mình dùng công thức này:

=IFERROR(INDEX($F$3:$F$1353,MATCH(1,INDEX(($J11&$H11&$I11=$A$3:$A$1353)*(0=COUNTIFS($N11:N11,$F$3:$F$1353)),0),0)),"")

=>nếu cần thay đổi site và status thì bạn add code và điền site+status mong muốn ở cột H và J
View attachment 281966
Mà bạn ơi, mình check kỹ file của bạn thì thấy nó chưa chuẩn ở chỗ, số lượng lấy ra đó không biết của ngày nào? vì nếu trùng ngày thì nó chỉ lấy 1 cái duy nhất, và lấy tiếp ngày khác, nhưng sẽ không tương ứng với số lượng kia. Ví dụ mã sp màu cam dưới đây: quantiy 0.8 -168 và 63 (site 809) sẽ là 31/10/2022 còn 302.4 là ngày 28/02/2023- Có cách nào khắc phục điểm này bạn giúp với nha. Mình chân thành cảm ơn!
1665464210176.png
 
Mà bạn ơi, mình check kỹ file của bạn thì thấy nó chưa chuẩn ở chỗ, số lượng lấy ra đó không biết của ngày nào? vì nếu trùng ngày thì nó chỉ lấy 1 cái duy nhất, và lấy tiếp ngày khác, nhưng sẽ không tương ứng với số lượng kia. Ví dụ mã sp màu cam dưới đây: quantiy 0.8 -168 và 63 (site 809) sẽ là 31/10/2022 còn 302.4 là ngày 28/02/2023- Có cách nào khắc phục điểm này bạn giúp với nha. Mình chân thành cảm ơn!
View attachment 281969

cảm ơn bạn đã kiên nhẫn dù mình làm sai yêu cầu hơi nhiều, mình hi vọng lần này có thể đúng:

Mình thêm cột để tạo giá trị duy nhất cho cột link(đã check ,không bị trùng nữa),mình sẽ link bằng cột A:

1665470165540.png

Mình đánh dấu mỗi loại số lượng và loại ngày. Không cần dùng công thức "nếu trùng thì lấy giá trị tiếp theo" mà ta định danh cho nó luôn.
1665470226267.png

Công thức chỗ Số lượng:
=IFERROR(INDEX($H$3:$H$1353,MATCH($K11&$I11&$J11&L$9,$A$3:$A$1353,0)),"")
1665470328580.png

Công thức chỗ ngày:
=IFERROR(INDEX($G$3:$G$1353,MATCH($K11&$I11&$J11&P$9,$A$3:$A$1353,0)),"")
 

File đính kèm

  • Lọc ngày nhập khác nhau_Cùng mã sp_cùng kho.xlsx
    206.5 KB · Đọc: 6
Chào anh chị em GPE,

Mình có file kèm, anh chị vui lòng giúp mình công thức nào lấy được:
- số lượng theo các ngày hạn sử dụng, theo điều kiện là cột tình trạng Normal, hoặc Hold- Cùng kho (site), cùng mã sản phẩm- Lấy ra các ngày tương ứng với số lượng đó.
Vì dữ liệu nó trùng dòng- có mã trùng đến 4 dòng cho 4 số lượng khác và ngày khác nhau.
Mình có ví dụ bên cạnh.
Rất mong anh chị em giúp mình với nhé.
Chân thành cảm ơn anh chị!
Góp vui thêm 1 cách dùng VBA.
Nhấn vào nút Chạy code để có được kết quả.
 

File đính kèm

  • Lọc ngày nhập khác nhau_Cùng mã sp_cùng kho.xlsm
    171.4 KB · Đọc: 10
cảm ơn bạn đã kiên nhẫn dù mình làm sai yêu cầu hơi nhiều, mình hi vọng lần này có thể đúng:

Mình thêm cột để tạo giá trị duy nhất cho cột link(đã check ,không bị trùng nữa),mình sẽ link bằng cột A:

View attachment 281980

Mình đánh dấu mỗi loại số lượng và loại ngày. Không cần dùng công thức "nếu trùng thì lấy giá trị tiếp theo" mà ta định danh cho nó luôn.
View attachment 281981

Công thức chỗ Số lượng:
=IFERROR(INDEX($H$3:$H$1353,MATCH($K11&$I11&$J11&L$9,$A$3:$A$1353,0)),"")
View attachment 281982

Công thức chỗ ngày:
=IFERROR(INDEX($G$3:$G$1353,MATCH($K11&$I11&$J11&P$9,$A$3:$A$1353,0)),"")
Vô cùng cảm ơn bạn đã nhiệt tình giúp mình, dù mình đưa ra dữ liệu cũng như yêu cầu ban đầu chưa rõ ràng!
Chúc bạn mạnh khỏe, hạnh phúc, thành công trong cuộc sống!
Bài đã được tự động gộp:

Góp vui thêm 1 cách dùng VBA.
Nhấn vào nút Chạy code để có được kết quả.
Chào bạn,

Thật là ảo diệu!
Cảm ơn bạn, chúc bạn vui!
 
Chào anh chị em GPE,

Mình có file kèm, anh chị vui lòng giúp mình công thức nào lấy được:
- số lượng theo các ngày hạn sử dụng, theo điều kiện là cột tình trạng Normal, hoặc Hold- Cùng kho (site), cùng mã sản phẩm- Lấy ra các ngày tương ứng với số lượng đó.
Vì dữ liệu nó trùng dòng- có mã trùng đến 4 dòng cho 4 số lượng khác và ngày khác nhau.
Mình có ví dụ bên cạnh.
Rất mong anh chị em giúp mình với nhé.
Chân thành cảm ơn anh chị!

Mình thấy dữ liệu ghi thành nhiều dòng như thế mới chuẩn, bạn có thể sử dụng các công cụ lọc tiện dụng. Ghi thành nhiều cột tưởng là tiết kiệm số dòng nhưng là không khoa học sau này gặp rắc rối.
 
Chào bạn,

Mình thấy công thức bạn ok đó- Nhưng không biết bạn xét đến cột C là site chưa vì mã sản phẩm nó trùng cho cả 2 site 804 và 809 (cột C).
Và mình cũng lấy thêm cho status là Hold nữa, phải lồng IF vào trước MATCH phải không?
Mong bạn xem lại giúp!
Bài đã được tự động gộp:


Chào bạn,

Cảm ơn bạn gợi ý! mà mình không biết code VBA.
Nếu bạn biết thì giúp mình nhé!
Đa tạ ah!
Bài đã được tự động gộp:


Chào bạn,
Cảm ơn bạn phản hồi!
Mình dùng excel 2013.
Bố cục muốn trình bày thì giống như bạn Phương Thanh 103 đã làm.

View attachment 281961
Mong bạn xem giúp mình, vì xét thêm cột C, site 804 và 809 nữa. Chứ code sp nó lặp lại trong 2 site này.
Vào Data -> Refresh khi cập nhật dữ liệu mới:
Nếu dữ liệu vượt 4 cột thì kết quả bị thiếu
 

File đính kèm

  • Lọc ngày nhập khác nhau_Cùng mã sp_cùng kho (1).xlsx
    105.5 KB · Đọc: 7
Web KT
Back
Top Bottom