trananhtuan281914
Thành viên hoạt động



- Tham gia
- 18/3/20
- Bài viết
- 153
- Được thích
- 37
Công thức ô D4:Chào anh/chị.
Anh chị hướng dẫn giúp em tìm dữ liệu để cho ra kế quả như file đính kèm.
Em cảm ơn.
VLOOKUP(C4;OFFSET($H$3:$I$3;MATCH(B4;$G$4:$G$14;0);;COUNTIF($G$3:$G$14;B4));2;1)
=IFERROR(VLOOKUP(C4;OFFSET($H$3:$I$3;MATCH(B4;$G$4:$G$14;0);;COUNTIF($G$3:$G$14;B4));2;1);10)
Mình có cách nào để xử lý mã hàng B cho đúng không anh, vì em có nhiều mã hàng như B giá cũng khác.Công thức ô D4:
Cách 1: Thay H7=1
Cách 2: Chỉ dùng cho dữ liệu này với H7=600PHP:VLOOKUP(C4;OFFSET($H$3:$I$3;MATCH(B4;$G$4:$G$14;0);;COUNTIF($G$3:$G$14;B4));2;1)
PHP:=IFERROR(VLOOKUP(C4;OFFSET($H$3:$I$3;MATCH(B4;$G$4:$G$14;0);;COUNTIF($G$3:$G$14;B4));2;1);10)
B 600 là mức tối thiểu, thực chất là 1 đến 1 999 sẽ là giá 10B với mức SL tối thiểu để bán =600, chưa hiểu 599 lại có giá bán là 10?
Làm theo kết quả mong muốn tại cột E.
D4:
=IFERROR(LOOKUP(2,1/($G$4:$G$14=B4)/($H$4:$H$14<=C4),$I$4:$I$14),$I$7)
Cố định giá sản phẩm B, những sản phẩm khác tương tự B sẽ không đúng anh.B với mức SL tối thiểu để bán =600, chưa hiểu 599 lại có giá bán là 10?
Làm theo kết quả mong muốn tại cột E.
D4:
=IFERROR(LOOKUP(2,1/($G$4:$G$14=B4)/($H$4:$H$14<=C4),$I$4:$I$14),$I$7)
Chơi như vầy mới vui:B 600 là mức tối thiểu, thực chất là 1 đến 1 999 sẽ là giá 10
D4=LOOKUP(C4,TEXT($H$4:$H$14,"0;;\1")^(MATCH($G$4:$G$14,$G$4:$G$14,)<>ROW($1:$11))/(B4=$G$4:$G$14),$I$4:$I$14)
Xem cái hàm anh viết, em thấy rối rắm quá...hỏng vui anh. Có cách nào diễn đạt cho gần gủi và dễ hiểu hông anh.Chơi như vầy mới vui:
Mã:D4=LOOKUP(C4,TEXT($H$4:$H$14,"0;;\1")^(MATCH($G$4:$G$14,$G$4:$G$14,)<>ROW($1:$11))/(B4=$G$4:$G$14),$I$4:$I$14)
Thân
Dễ mà! Muốn 'hỏng' thì 'hỏng':Xem cái hàm anh viết, em thấy rối rắm quá...hỏng vui anh. Có cách nào diễn đạt cho gần gủi và dễ hiểu hông anh.
D4=LOOKUP(C4,IF(MATCH($G$4:$G$14,$G$4:$G$14,)<>ROW($1:$100),$H$4:$H$14,1)/(B4=$G$4:$G$14),$I$4:$I$14)
Sản phẩm E các mức giá ngược lại, kết quả không đúng anh.Dễ mà! Muốn 'hỏng' thì 'hỏng':
kết thúc bằng Ctrl+Shift+Enter. Fill xuống.Mã:D4=LOOKUP(C4,IF(MATCH($G$4:$G$14,$G$4:$G$14,)<>ROW($1:$100),$H$4:$H$14,1)/(B4=$G$4:$G$14),$I$4:$I$14)
Thân
Tôi đã bảo bạn rồi: "công thức không lỗi, chỉ có tư duy người ra lệnh bị lỗi", nhìn vào bảng ai cũng sẽ trả lời với bạn là chỉ cần 'sort' bảng dữ liệu lại là xong ngay thôi! là kiến thức sơ đẳng thôi mà!Sản phẩm E các mức giá ngược lại, kết quả không đúng anh.
D4=LOOKUP(C4,TEXT(AGGREGATE(15,6,$H$4:$H$18/(B4=$G$4:$G$18),ROW($1:$20)),"0;;\1")^SIGN(ROW($1:$20)-1),MOD(AGGREGATE(15,6,$H$4:$H$18*10^6+$I$4:$I$18/(B4=$G$4:$G$18),ROW($1:$20)),10^6))
Nào dám chơi dị hay thách thức anh, Em chỉ muốn tìm một giải pháp cho 1 giả định thiếu logic. Cảm ơn anh.Tôi đã bảo bạn rồi: "công thức không lỗi, chỉ có tư duy người ra lệnh bị lỗi", nhìn vào bảng ai cũng sẽ trả lời với bạn là chỉ cần 'sort' bảng dữ liệu lại là xong ngay thôi! là kiến thức sơ đẳng thôi mà!
Nhưng nếu bạn muốn "chơi kỳ"! để thách thức, thì tôi cũng sẽ "chơi dị" lại với bạn, và chỉ đến đây thôi không còn thêm "giải thích" hoặc "cách gần gũi" ...gì gì khác nữa. Vậy hén!
Chỉ Enter. Fill xuống.Mã:D4=LOOKUP(C4,TEXT(AGGREGATE(15,6,$H$4:$H$18/(B4=$G$4:$G$18),ROW($1:$20)),"0;;\1")^SIGN(ROW($1:$20)-1),MOD(AGGREGATE(15,6,$H$4:$H$18*10^6+$I$4:$I$18/(B4=$G$4:$G$18),ROW($1:$20)),10^6))
Thân
Em có thêm một điều kiện khách hàng để dò tìm, kết quả là fail. Anh chị xem giúp em.Dễ mà! Muốn 'hỏng' thì 'hỏng':
kết thúc bằng Ctrl+Shift+Enter. Fill xuống.Mã:D4=LOOKUP(C4,IF(MATCH($G$4:$G$14,$G$4:$G$14,)<>ROW($1:$100),$H$4:$H$14,1)/(B4=$G$4:$G$14),$I$4:$I$14)
Thân
Kết quả ra không đúng là do:Em có thêm một điều kiện khách hàng để dò tìm, kết quả là fail. Anh chị xem giúp em.
Bạn đọc câu điều kiện như thế nào thì lập công thức như thế đó:Em bổ sung thêm điều kiện ngày áp dụng cho bảng giá, kết quả fail anh. Em làm như sau, anh xem hướng dẫn dùm em. Cảm ơn anh.
=LOOKUP($K3,IF(MATCH(BangGia!$D$2:$D$40,BangGia!$D$2:$D$40,)<>ROW($1:$100),BangGia!$H$2:$H$40,1)/($J3=BangGia!$J$2:$J$40)/($E3=BangGia!$D$2:$D$40)/($C3=BangGia!$B$2:$B$40),BangGia!$I$2:$I$40)
=LOOKUP($K3,IF(MATCH(BangGia!$D$2:$D$40,BangGia!$D$2:$D$40,)<>ROW($1:$100),BangGia!$H$2:$H$40,1)/($J3>=BangGia!$J$2:$J$40)/($E3=BangGia!$D$2:$D$40)/($C3=BangGia!$B$2:$B$40),BangGia!$I$2:$I$40)Bạn đọc câu điều kiện như thế nào thì lập công thức như thế đó:
Thân
- "Phải chọn 'Giá' từ 'Ngày áp dụng "trở đi".
- Bạn lập điều kiện với dấu "=" mang ý phải đúng y ngày đó ($J3=BangGia!$J$2:$J$40), thì công thức báo lỗi không tìm ra kết quả là chính xác rồi.
Tôi đọc bài của bạn từ đầu đến giờ ;góp ý với bạnEm đã điều chỉnh lại như sau:
=LOOKUP($K3,IF(MATCH(BangGia!$D$2:$D$40,BangGia!$D$2:$D$40,)<>ROW($1:$100),BangGia!$H$2:$H$40,1)/($E3=BangGia!$D$2:$D$40)/($C3=BangGia!$B$2:$B$40),BangGia!$I$2:$I$40)
Kết quả đúng rồi anh.
Em bổ sung thêm điều kiện ngày áp dụng cho bảng giá, kết quả fail anh. Em làm như sau, anh xem hướng dẫn dùm em. Cảm ơn anh.
=LOOKUP($K3,IF(MATCH(BangGia!$D$2:$D$40,BangGia!$D$2:$D$40,)<>ROW($1:$100),BangGia!$H$2:$H$40,1)/($J3=BangGia!$J$2:$J$40)/($E3=BangGia!$D$2:$D$40)/($C3=BangGia!$B$2:$B$40),BangGia!$I$2:$I$40)