Dr.Jackal
Thành viên mới
- Tham gia
- 17/5/11
- Bài viết
- 19
- Được thích
- 0
File đính kèm
Lần chỉnh sửa cuối:
Đây là hàm tự tạo, bạn xem File. Tôi thay các ô được check bằng cách chọn chữ "X" trên đầu mỗi cột. Muốn tính tổng của những cột nào thì chọn chữ "X" trên đầu mỗi cột đó. Trong File của bạn sử dụng hàm "SUMX" như sau:Ví dụ em có 1 file thế này.
View attachment 122701
Ở những ô A1, B1, C1, D1 sẽ có cái Checkbox.
Ý em muốn là ở cột F sẽ chỉ tính tổng của những cột đã check trong Checkbox, những ô không check sẽ bỏ qua, không cộng vào.
Có anh nào giúp được, xin hướng dẫn giúp em với.
Nhớ là ô A1 phải có địa chỉ tuyệt đối($A$1), sau đó kéo Fill xuống các hàng dưới giống như hàm "SUM".=sumx($A$1:E2)
Cần gì loằng ngoằng thế. Bạn copy code của tôi sang File của bạn là oke thôi mà!Thank bạn đã giúp đỡ mình.
Nhưng sau mình export file Moudle đó ra, rồi import vào file của mình thì nó lại không ra kết quả như mong muốn.
Mình gửi file lên đây, mong bạn giúp đỡ luôn nha. Thank
http://www.fshare.vn/file/SBN97B34NI/
Cần gì loằng ngoằng thế. Bạn copy code của tôi sang File của bạn là oke thôi mà!
Bạn cần tính tổng ở sheet nào? ô nào?Thank bạn đã giúp đỡ mình.
Nhưng sau mình export file Moudle đó ra, rồi import vào file của mình thì nó lại không ra kết quả như mong muốn.
Mình gửi file lên đây, mong bạn giúp đỡ luôn nha. Thank
http://www.fshare.vn/file/SBN97B34NI/
Bạn cần tính tổng ở sheet nào? ô nào?
Không phải tại như bạn nêu mà tại bạn gõ chữ "x" thường. Trong code tôi yêu cầu chữ "X" hoa. Tôi đã sửa lại code. Bạn xem thử đã được chưa nhé, có gì hồi âm lại ngay cho tôi!Nhưng mà nó không được bác ạ.
Hay tại file của em trình bày khác đi. Tại vì dòng đánh dấu "X" của em nằm ở dòng số 2, và bắt đầu bằng cột B.
Không như của bác nằm ở A1 luôn.
Không phải tại như bạn nêu mà tại bạn gõ chữ "x" thường. Trong code tôi yêu cầu chữ "X" hoa. Tôi đã sửa lại code. Bạn xem thử đã được chưa nhé, có gì hồi âm lại ngay cho tôi!
P/S: Nếu vùng dữ liệu của bạn bắt đầu ở cột B2(có dấu X hay không không quan trọng) thì công thức tại ô cần tính tổng phải được viết: =SUMX($B$2:đến đâu đó)
Bạn đã làm được chưa vậy?Thì ra là do mình đánh công thức nhầm. Vùng dữ liệu của mình không quét chọn những hàng có dấu "X".
Thành thật cám ơn bạn rất nhiều.
=SUMPRODUCT(($B$2:$K$2<>"")*$B$3:$K$6)
- Không biết tôi hiểu nhầm ý của tác giả hay bạn hiểu nhầm?Bài này SUMPRODUCT là khỏe mà, code kiếc gì cho mất công vậy nhỉ?
B2:K2 muốn gõ cái gì đó thì gõ, đừng để trống là được.Mã:=SUMPRODUCT(($B$2:$K$2<>"")*$B$3:$K$6)
Tôi không tải được file gốc của tác giả nên phải tải file của bạn, nếu bạn làm đúng thì đừng có đặt công thức =SUMx(B24) ở E3 để người khác hiểu nhầm.- Không biết tôi hiểu nhầm ý của tác giả hay bạn hiểu nhầm?
- Theo tôi nghĩ tác giả cần tính tổng của các ô thuộc cùng 1 dòng. Ở đây tác giả có 2 bảng có cấu trúc giống nhau: Gồm 4 dòng (GOLD, WOOD, STONE, IRON), trên dòng GOLD là 1 dòng trống để tích dấu "X" ở đầu mỗi cột. Và ý của tác giả là muốn tính tổng các ô của cùng 1 dòng có dấu "X" ở trên đầu mỗi cột đó(Ví dụ cộng các ô được tích dấu "X") của cả 2 bảng vào bảng tổng hợp ở phía dưới.
- Còn bạn thì hiểu tác giả muốn tính tổng của tất cả các côt có dấu "X" trên đầu đúng không?
Bạn xem lại File xem có đúng vậy không?
- Ai đúng ai sai thì phải chờ tác giả!
Hy vọng tôi không mất công vô ích!
=SUMPRODUCT(($B$2:$K$2<>"")*($A$3:$A$6=A19)*$B$3:$K$6)
Tôi góp ý với code bạn viết trong bài #13:
Public Function SumIIf(Rng As Range, CrR As String, _
CrC As String) As Double
Dim iR As Integer, jC As Integer, Tmp As Double
For iR = 1 To Rng.Rows.Count
For jC = 1 To Rng.Columns.Count
If UCase(Rng(iR, 1)) Like UCase(CrR) _
And UCase(Rng(1, jC)) Like UCase(CrC) Then
Tmp = Tmp + Rng(iR, jC)
End If
Next jC
Next iR
SumIIf = Tmp
End Function
=SumIIF($A$2:$K$6,A19,"X")+SumIIF($A$9:$K$13,A19,"x")
Ví dụ em có 1 file thế này.
View attachment 122701
Ở những ô A1, B1, C1, D1 sẽ có cái Checkbox.
Ý em muốn là ở cột F sẽ chỉ tính tổng của những cột đã check trong Checkbox, những ô không check sẽ bỏ qua, không cộng vào.
Có anh nào giúp được, xin hướng dẫn giúp em với.
Tổng hợp các ý kiến của các thành viên, tôi giúp bạn (file đính kèm). Không biết có đúng ý của bạn không?
G2=SUMIF($A$1:$F$1,"true",A2:F2)
Tổng hợp các ý kiến của các thành viên, tôi giúp bạn (file đính kèm). Không biết có đúng ý của bạn không?
Cả 2 cùng xem lại bài #13, có file gốc và giải thích của bạn chuot0106 rất rõ ràng (Dấu gạch - thứ 2).nhảy đại dzô, hỏng biết đúng hng nữa
Mã:G2=SUMIF($A$1:$F$1,"true",A2:F2)
Cả 2 cùng xem lại bài #13, có file gốc và giải thích của bạn chuot0106 rất rõ ràng (Dấu gạch - thứ 2).
Vì tôi cũng đã bị nhầm ở bài #12.
Cũng chỉ cần SUMIF cho ô B19:Cả 2 cùng xem lại bài #13, có file gốc và giải thích của bạn chuot0106 rất rõ ràng (Dấu gạch - thứ 2).
Vì tôi cũng đã bị nhầm ở bài #12.
=SUMIF($B$2:$F$2,"x",B3:F3)+SUMIF($B$9:$F$9,"x",B10:F10)
=SUMPRODUCT(($B$2:$F$2<>"")*($A$3:$A$13=A19),$B$3:$F$13)