Tính tổng đơn hàng

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

nghiank09

Thành viên hoạt động
Tham gia
1/3/12
Bài viết
143
Được thích
30
Chào mọi người,

Mình có một file như hình, xin mọi người giúp mình công thức chung áp dụng cho các ô ở cột F để tính tổng của cả đơn hàng (theo dấu phân cách - Mã sản phẩm là QQQ). Đơn hàng đã được mình tô màu xanh, được phân cách nhau bằng "QQQ" ở cột A. VD: Các ô từ F2 đến F7 là mình đã tính sẵn. Giá trị của ô ở cột F tương ứng với mã sản phẩm QQQ có thể mang giá trị nào cũng được, không nhất thiết phải để trống như hình :)

Cám ơn mọi người rất nhiều. Chúc mọi người một ngày vui vẻ.

Untitled.png
 

File đính kèm

  • tinh tong.xlsx
    11.4 KB · Đọc: 24
Lần chỉnh sửa cuối:
Tạo thêm cột phụ có lẽ tính được. Tuy nhiên, hiển thị không giống như hình.
Ô F2 = E2,
Ô F3 =IF(E3=0;0;E3+F2)
Không giống như yêu cầu nhưng có thể dùng đỡ trong khi chờ kết quả như ý.
 
Lần chỉnh sửa cuối:
theo mình thì:
1. Bạn thêm cột phụ:
COUNTIF($A$2:A2,"QQQ")
2. rồi dùng CT:
=IF(A2="QQQ",0,SUMPRODUCT(($C$2:$C$20)*($D$2:$D$20)*($G$2:$G$20=G2)))
 
Cám ơn @Hoàng Tuấn 868@hm_nt đã hỗ trợ.
Công thức của bạn Hoàng Tuấn 868 chạy đúng như mong đợi. Công thức của bạn hm_nt, khi mình thêm sản phẩm ở cột A thì công thức không còn đúng nữa :)
 
Công thức mảng . . .
Mã:
F2=SUM(INDEX($E$2:$E2,IFERROR(MATCH(2,1/($A$2:$A2="QQQ")),1)):INDEX($E2:$E$19,MATCH("QQQ",$A2:$A$19,0)))
 
Một cách khác dùng công thức tại F2:
Mã:
=IF(A2="QQQ","",SUMPRODUCT(INDEX(INDEX($C$1:C2,IFERROR(LOOKUP(2,1/($A$1:$A2="QQQ"),ROW($A$1:$A2)),1)+1):
INDEX(C2:$C$19,MATCH("QQQ",A2:$A$19,0)-1),)*INDEX(INDEX($D$1:D2,IFERROR(LOOKUP(2,1/($A$1:$A2="QQQ"),ROW($A$1:$A2)),1)+1):
INDEX(D2:$D$19,MATCH("QQQ",A2:$A$19,0)-1),)))
 
Công thức thường:
F2 =IF(A2="QQQ","",IF(OR(A1="QQQ",A1=$A$1),SUM(OFFSET(E2,,,MATCH("QQQ",$A2:$A$19,0),1)),G1))
 
Lời riêng cho các bạn muốn học chứ không phải muốn thử công thức:
- Bảng tính được thiết kế theo dạng rác rưởi
Không có ai đọc tổng giá trị hiên lai theo từng dòng đơn vị cả. Vì nó rất dề gây hiểu lầm. Nếu cực chảng đã phải ghi, người ta ghi tổng lũy tiến, may ra còn có ý nghĩa.

Luật chung cho bảng liệt kê là trong ghi cùng cột với giá thành.
 
Lời riêng cho các bạn muốn học chứ không phải muốn thử công thức:
- Bảng tính được thiết kế theo dạng rác rưởi
Không có ai đọc tổng giá trị hiên lai theo từng dòng đơn vị cả. Vì nó rất dề gây hiểu lầm. Nếu cực chảng đã phải ghi, người ta ghi tổng lũy tiến, may ra còn có ý nghĩa.

Luật chung cho bảng liệt kê là trong ghi cùng cột với giá thành.
Tôi đang định viết ý này.
- Mỗi đơn hàng không có mã đơn hàng, ít nhất là số hiệu đơn hàng (không trùng)
- QQQ chả có ý nghĩa gì
- Tổng đơn hàng ghi trên từng dòng con là hoàn toàn vô nghĩa (như anh nói)

Nếu có cột mã đơn hàng thì dùng tính năng sub total, không cần công thức.
 
Web KT
Back
Top Bottom