Các câu hỏi về hàm SUMIF

Liên hệ QC
Bạn nào giúp mình phát hiện chỗ sai của công thức dưới đây:

=SUMIF($D$280:$D$389,AND(">="&5/19/2009,"<="&5/22/2009),$M$280:$M$389)

Thank you vẻy much

Billy

Với yêu cầu như thế ,bạn không dùng Sumproduct thử xem !
Thân
 
Với hàm Sumif() nếu điều kiện là một biểu thức so sánh thì biểu thức so sánh đó phải là dạng chuỗi (nghĩa là bạn phải cho biểu thức so sánh vào hai dấu "). Vì vậy, công thức của bạn phải sửa lại như thế này:
Mã:
=SUMIF(A1:C6,"<"&MIN(A4:C4),C1:C6)

Không có File Text thử xem sao ra được ta ?
= SUMIF(A1:C6,"<"&MIN(A4:C4),C1:C6)
Thanks !
 
Nhờ các bạn chỉ giùm mình công thức này và sai chỗ nào nhé: =SUMPRODUCT(--(E7:E14"d"&"*"),G7:G14). Yêu cầu là tính tổng và không tính những dòng nào có ký tự đầu là "d", các ký tự sau có thể là số và chữ. Sao công thức trên không cho ra kết quả mong muốn?
 
Lần chỉnh sửa cuối:
Bạn viết như sau:

=SUMPRODUCT(--(LEFT(A3:A24,1)<>"b"),(B3:B24))
 
Lần chỉnh sửa cuối:
Công thức báo lỗi rồi bạn ơi!
 
Lần chỉnh sửa cuối:
sumif

Bạn à! sumif(cột chứa giá trị đièu kiện,điều kiện,cột cần tính tổng)(trích:giáo trình tin học căn bản của DH Kte và quản trị kinh doanh dh thái nguyên) xong bạn áp dụng nhé. Chứ bạn hỏi thế thì tớ cũng chịu,criteria là điều kiện thì phải tùy vào mục dich mình cần tính.bạn áp dụng nhé.
 
=SUMPRODUCT(--(LEFT(A3:A24,1)"b"),(B3:B24)) Công thức trên mình thấy báo lỗi! không biết sai chỗ nào?
 
Lần chỉnh sửa cuối:
=SUMPRODUCT(--(LEFT(A3:A24,1)<>"b"),(B3:B24))
Công thức trên mình thấy báo lỗi! không biết sai chỗ nào?
Hàm này bình thường mà... Nếu báo lổi có lẻ sai định dạng về dấu phân cách công thức!
Chắc ăn nhất là dùng cái này:
=SUMPRODUCT((LEFT(A3:A24)<>"b")*(B3:B24))
Bảo đãm máy nào cũng chạy ---> Mất công máy thì dấu phẩy, máy lại chấm phẩy... không đồng nhất về dấu lý ra các bạn có thể nhận ra khi nhìn thông báo lổi chứ nhỉ... sau khi bấm OK bảng thông báo lổi, thường dấu nháy sẽ nhảy đến ngay điểm chứa lổi... cụ thể nếu bị lổi dấu phẩy hoặc chấm phẩy thì y như rằng dấu nháy nó nhảy ngay đến dấu phân cách này
 
Cám ơn vì những kiến thức hữu ích.
Hiện tại tôi muốn tổng hợp theo tuần thì thế nào nhỉ? Tôi đã thử thay hàm Month() bằng hàm Weeknum(,) nhưng luôn bị báo lỗi là sao? Ví dụ công thức sau:

=SUMPRODUCT((WEEKNUM($K$4:$K$28,2)=15)*($L$4:$L$28))

Trog đó K4:K28 là thời gian từ ngày 5/4/2009 đến ngày 29/5/2009.
L4:L28 là các giá trị tương ứng.

Có ai giải thích giúp được không?
 
Lần chỉnh sửa cuối:
Hỏi về Hàm SUMIF và SUMPRODUCT

Chào các bạn!
Mình gặp một vấn đề nhỏ trong việc sử dụng hàm Sumif và Sumproduct trong tập tin đính kèm.
Không hiểu sao 2 công thức của mình lại không cho ra kết quả. Nhờ các bạn giải thích cho mình với.
 

File đính kèm

  • Book1.xls
    13.5 KB · Đọc: 43
Chào các bạn!
Mình gặp một vấn đề nhỏ trong việc sử dụng hàm Sumif và Sumproduct trong tập tin đính kèm.
Không hiểu sao 2 công thức của mình lại không cho ra kết quả. Nhờ các bạn giải thích cho mình với.
Việc nối chuổi theo kiểu =SUMIF(B1:B26,A1&"*",C1:C26) chỉ cho kết quả nếu vùng B1:B26 là dạng TEXT
Còn công thức:
=SUMPRODUCT((LEFT(B1:B26,2)=A1)*(C1:C26))
đương nhiên là sai rồi, vì hàm LEFT cho kết quả là TEXT, còn A1 lại là NUMBER, sao = nhau được
Phải sửa lại thành:
=SUMPRODUCT((LEFT(B1:B26,2)*1=A1)*(C1:C26))
 

File đính kèm

  • Book1.xls
    13.5 KB · Đọc: 62
- Hàm SUMPRODUCT cho kết quả đúng khi mình gõ thêm dấu nháy đơn trước giá trị trong ô A1, nhưng khi mình format ô A1 sang text thì lại không ra kết quả.

- Hàm SUMIF hơi khác 1 chút là phải thêm dấu nháy đơn trước các chữ số của cột B
 
Chào các bạn!
Mình gặp một vấn đề nhỏ trong việc sử dụng hàm Sumif và Sumproduct trong tập tin đính kèm.
Không hiểu sao 2 công thức của mình lại không cho ra kết quả. Nhờ các bạn giải thích cho mình với.
1. Thứ nhất, các hạ sai ngay tại điều kiện sumif:
=SUMIF(B1:B26,A1&"*",C1:C26)
Vùng B1:B26 là kiểu dữ liệu số (Number), trong khi A1&"*" là kiểu dữ liệu chuỗi (String) thì làm sao mà SUMIF được.

2. Thứ hai, các hạ cũng sai ngay điều kiện của SUMPRODUCT
=SUMPRODUCT((LEFT(B1:B26,2)=A1)*(C1:C26))
LEFT(B1:B26) trả về dạng chuỗi (String) trong khi A1 là kiểu dữ liệu số (Number)
Nếu muốn sửa thì sửa công thức trên như sau:
=SUMPRODUCT(--(LEFT(B1:B26,2)=A1)*(C1:C26))
 
- Hàm SUMPRODUCT cho kết quả đúng khi mình gõ thêm dấu nháy đơn trước giá trị trong ô A1, nhưng khi mình format ô A1 sang text thì lại không ra kết quả.
Giờ thí nghiệm thế này nhé:
- Gõ 1 số (dạng Number) vào cell A1
- Tại B1 gõ công thức =ISTEXT(A1) ---> Đương nhiên kết quả nhận được sẽ = FALSE
- Giờ Format A1 thành dạng TEXT, kiểm tra kết quả tại B1 ---> Bạn sẽ thấy nó chẳng thay đổi gì (mà lý ra nó phải = TRUE theo suy nghĩ của chúng ta)
Điều đó chứng tỏ:
- Format sau khi có dử liệu sẽ không có tác dụng thay đổi kiểu dử liệu của dử liệu đó
- Kiểu dử liệu chỉ thật sự thay đổi khi ta nhập mới vào 1 cell đã được Format trước đó
===> Đại khái thế này: Sau khi Format cell A1 sang dạng TEXT xong, bạn phải bấm F2 rồi Enter thì cell A1 mới thật sự là TEXT ---> Thế đấy!
Câu hỏi này đã từng có trên diển đàn lâu lắm rồi
---------------
Nói thêm: Từ các nhận định trên, ta thấy rằng việc dùng code để convert Text to Num không có vấn đề gì, nhưng làm điều ngược lại thật chẳng dể tí nào
Thử xem!
 
Lần chỉnh sửa cuối:
1. Thứ nhất, các hạ sai ngay tại điều kiện sumif:

Vùng B1:B26 là kiểu dữ liệu số (Number), trong khi A1&"*" là kiểu dữ liệu chuỗi (String) thì làm sao mà SUMIF được.

2. Thứ hai, các hạ cũng sai ngay điều kiện của SUMPRODUCT
LEFT(B1:B26) trả về dạng chuỗi (String) trong khi A1 là kiểu dữ liệu số (Number)
Nếu muốn sửa thì sửa công thức trên như sau:

Không biết bạn đưa vào dấu -- có chuyển dữ liệu sang số được không vậy. Mình thấy chỉ cần nhân với 1 là được
 
Không biết bạn đưa vào dấu -- có chuyển dữ liệu sang số được không vậy. Mình thấy chỉ cần nhân với 1 là được

Theo mìn nghĩ là dược chứ bạn. Tại bạn ChauBaThong đặt dấu -- sai chỗ một chút.
Sửa
PHP:
=SUMPRODUCT(--(LEFT(B1:B26,2)=A1)*(C1:C26))
Thành
PHP:
=SUMPRODUCT((--LEFT(B1:B26,2)=A1)*(C1:C26))
 
...
2. Thứ hai, các hạ cũng sai ngay điều kiện của SUMPRODUCT
=SUMPRODUCT((LEFT(B1:B26,2)=A1)*(C1:C26))
LEFT(B1:B26) trả về dạng chuỗi (String) trong khi A1 là kiểu dữ liệu số (Number)
Nếu muốn sửa thì sửa công thức trên như sau:
=SUMPRODUCT(--(LEFT(B1:B26,2)=A1)*(C1:C26))
Hic hic, hỏng biết Châu Bá Thông lên núi lâu quá rồi có đãng trí không...
Phải đưa hai cái "trừ trừ" vào trong cái ngoặc đơn, trước cái LEFT kia, mới được cơ!
Vầy nè:
=SUMPRODUCT((--LEFT(B1:B26,2)=A1)*(C1:C26))​

-------------------------

@Yeudoi: Thêm hai dấu -- trước một số dạng text tương đương với việc nhân nó với 1. Ví dụ, công thức trên đây cũng có thể viết là:
=SUMPRODUCT((LEFT(B1:B26,2)*1=A1)*(C1:C26))​
 
Hic hic, hỏng biết Châu Bá Thông lên núi lâu quá rồi có đãng trí không...
Phải đưa hai cái "trừ trừ" vào trong cái ngoặc đơn, trước cái LEFT kia, mới được cơ!
Vầy nè:
=SUMPRODUCT((--LEFT(B1:B26,2)=A1)*(C1:C26))​
Khà khà! Tại hạ đúng là "tay run" rồi, có hai dấu "--" mà cũng bỏ nhầm chỗ! Thiệt là khổ quá đi à! Đa tạ BNTT các hạ đã chiếu cố cho tại hạ. Đúng là phải để "--" nằm kế trước chữ LEFT ấy! Tại hạ xuất chiêu nhanh quá nên nhầm, mong bằng hữu bỏ qua cho.
 
Giúp đỡ: Hàm SUMIF sai ở đâu?

Mình có vấn đề được minh hoạ ở hình, ý mình muốn cộng tổng từ H127:H131 với điều kiện là cột F khác không (F<>0) ===> = SUMIF(F17:F131;"<>0;H127:H131), theo mình nghĩ khi đó nó chỉ cộng tổng của H127+H129 thôi nhưng kết quả lại giống hàm = SUM(H127:H131), mình không hiểu sai ở đâu, mong mọi người giúp đỡ!!!
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom