Hàm sum không trả về kết quả đúng khi điều kiện sum vượt quá 16 ký tự(số )

Liên hệ QC

kh0jy3n

Thành viên thường trực
Tham gia
21/4/12
Bài viết
345
Được thích
115
Dear All

Hiện tại em đang muốn dùng hàm sumif và sumproduc nhưng em đang gặp vấn đề hàm trả về kết quả không đúng mọi người rảnh xem giùm em với.

Em cảm ơn!
 

File đính kèm

  • Hàm Sum.xlsx
    9.6 KB · Đọc: 15
Theo mình được biết thì những số có độ dài lớn hơn 16 thì những số ở phía bên phải đều là số 0 (như cột H), nên những mã hàng từ dòng số 2 đến dòng số 9 là giống nhau, nên khi tính tổng bằng SUMIF thì nó là tổng của các số đó.
Ý kiến cá nhân: Bạn tạo thêm 1 cột phụ chèn thêm 1 ký tự bất kỳ để biến Mã hàng đó thành định dạng văn bản, lúc đó dùng hàm SUMIF sẽ cho ra kết quả chính xác hơn.
1662451211113.png

Kết quả khi thêm 1 cột phụ và thêm 1 ký tự bất kỳ.
1662451708939.png
 
Lần chỉnh sửa cuối:
Bạn chưa thử sumproduct thì phải
em làm được rồi
cảm ơn bác nhiều nhé !
Bài đã được tự động gộp:

Theo mình được biết thì những số có độ dài lớn hơn 16 thì những số ở phía bên phải đều là số 0 (như cột H), nên những mã hàng từ dòng số 2 đến dòng số 9 là giống nhau, nên khi tính tổng bằng SUMIF thì nó là tổng của các số đó.
Ý kiến cá nhân: Bạn tạo thêm 1 cột phụ chèn thêm 1 ký tự bất kỳ để biến Mã hàng đó thành định dạng văn bản, lúc đó dùng hàm SUMIF sẽ cho ra kết quả chính xác hơn.
View attachment 280745

Kết quả khi thêm 1 cột phụ và thêm 1 ký tự bất kỳ.
View attachment 280746
cảm ơn ý kiến của bác nhé!
 
Theo mình được biết thì những số có độ dài lớn hơn 16 thì những số ở phía bên phải đều là số 0 (như cột H), nên những mã hàng từ dòng số 2 đến dòng số 9 là giống nhau, nên khi tính tổng bằng SUMIF thì nó là tổng của các số đó.
Ý kiến cá nhân: Bạn tạo thêm 1 cột phụ chèn thêm 1 ký tự bất kỳ để biến Mã hàng đó thành định dạng văn bản, lúc đó dùng hàm SUMIF sẽ cho ra kết quả chính xác hơn.
View attachment 280745

Kết quả khi thêm 1 cột phụ và thêm 1 ký tự bất kỳ.
View attachment 280746
Microsoft có nói về vấn đề này ở đây:


Còn của chủ thớt "chắc là" lúc so sánh nó tự ép về kiểu số khi so sánh các chuỗi trên, làm tròn đến mức như link ở trên nên mới ra kết quả đó.
 
Lần chỉnh sửa cuối:
Theo mình được biết thì những số có độ dài lớn hơn 16 thì những số ở phía bên phải đều là số 0 (như cột H), nên những mã hàng từ dòng số 2 đến dòng số 9 là giống nhau, nên khi tính tổng bằng SUMIF thì nó là tổng của các số đó.
Ý kiến cá nhân: Bạn tạo thêm 1 cột phụ chèn thêm 1 ký tự bất kỳ để biến Mã hàng đó thành định dạng văn bản, lúc đó dùng hàm SUMIF sẽ cho ra kết quả chính xác hơn.
View attachment 280745

Kết quả khi thêm 1 cột phụ và thêm 1 ký tự bất kỳ.
View attachment 280746

Nếu bạn vẫn muốn dùng sumif thì thế này
Mã:
F2=SUMIF($A$2:$A$10,"*"&E2,$B$2:$B$10)
 
. . . . . Hiện tại em đang muốn dùng hàm sumif và sumproduc nhưng em đang gặp vấn đề hàm trả về kết quả không đúng mọi người rảnh xem giùm em với. . . . . .!
Chủ bài đăng đã tự làm khó mình với việc tạo mã hàng là những số lê thê!
Nên chủ tâm tìm cách tạo mã 1 cách khoa học hơn hiện tại.
Còn nếu phải xài bộ mã này thì thực hiện 1 cột phụ để chuyển mã sang dạng ký tự & ký số



Chúc mọi người vui!
 
123456​
7890​
*1234567890="*" &E4&G4
123456​
7890​
*131346="*" & (E5+G5)
 
Nếu bạn vẫn muốn dùng sumif thì thế này
Mã:
F2=SUMIF($A$2:$A$10,"*"&E2,$B$2:$B$10)
Nếu sử dụng ký tự đại diện thì bạn nên cảnh báo cho người dùng biết điểm hạn chế trong cách sử dụng này
Trong trường hợp trên, số ký tự mã hàng là bằng nhau do vậy không thể có kiểu chuỗi con của một chuỗi. Nhưng nếu chủ thớt làm với số lượng nhiều, có trường hợp mã dài mã ngắn thì có thể dẫn tới sai sót mà không kiểm soát được.
Ví dụ: Mã gốc "811220220815000364" và mã cần dò "220815000364" (Tức mã cần dò giống hoàn toàn một chuỗi phía sau của mã gốc). Khi dùng sumif như trên, công thức sẽ hiểu 2 mã đó là một và tổng số lượng. Trong khi, 2 mã đó là 2 mã khác nhau và kết quả sai không phát hiện ra
Đó là diễn giải cho chủ thớt biết vấn đề, còn thực tế dữ liệu tôi không bàn tới!
 
Web KT
Back
Top Bottom