Tính tổng cột theo đk cột

  • Thread starter Thread starter USB1394
  • Ngày gửi Ngày gửi
Liên hệ QC

USB1394

Thành viên hoạt động
Tham gia
20/12/08
Bài viết
173
Được thích
12
Nghề nghiệp
Lính triều đình
Em có một dạng dữ liệu : tính tổng cột theo đk cột nhưng chưa giải quyết được mong các bạn giúp đỡ +-+-+-++-+-+-++-+-+-+

Trình bày tóm lược : Bảng có các cột : Ngày - Diễn giải - Số lượng - Đơn giá - Thành tiền và ô chứa giá trị tháng (từ 1-12)
Vấn đề : Nếu cột ngày có tháng = ô chứa giá trị tháng thì tính tổng cột thành tiền


Còn 1 số vấn đề khác cũng tương tự , tôi có gởi file đính kèm . Mong nhận được sự quan tâm và giúp đỡ của các Bạn .
Xin cám ơn !
 

File đính kèm

Em có một dạng dữ liệu : tính tổng cột theo đk cột nhưng chưa giải quyết được mong các bạn giúp đỡ +-+-+-++-+-+-++-+-+-+

Trình bày tóm lược : Bảng có các cột : Ngày - Diễn giải - Số lượng - Đơn giá - Thành tiền và ô chứa giá trị tháng (từ 1-12)
Vấn đề : Nếu cột ngày có tháng = ô chứa giá trị tháng thì tính tổng cột thành tiền


Còn 1 số vấn đề khác cũng tương tự , tôi có gởi file đính kèm . Mong nhận được sự quan tâm và giúp đỡ của các Bạn .
Xin cám ơn !
Bạn chỉ cần dùng hàm sumif là được.
Mã:
=SUMIF($AO$20:$AP$35;CC7;AS20)
 
Em có một dạng dữ liệu : tính tổng cột theo đk cột nhưng chưa giải quyết được mong các bạn giúp đỡ +-+-+-++-+-+-++-+-+-+

Trình bày tóm lược : Bảng có các cột : Ngày - Diễn giải - Số lượng - Đơn giá - Thành tiền và ô chứa giá trị tháng (từ 1-12)
Vấn đề : Nếu cột ngày có tháng = ô chứa giá trị tháng thì tính tổng cột thành tiền

Còn 1 số vấn đề khác cũng tương tự , tôi có gởi file đính kèm . Mong nhận được sự quan tâm và giúp đỡ của các Bạn .
Xin cám ơn !
--------
Dựa vào các điều kiện của Bạn, xem thử có đúng ý Bạn không?
 
Bạn chỉ cần dùng hàm sumif là được.
Mã:
=SUMIF($AO$20:$AP$35;CC7;AS20)

Trong trường hợp này nếu dùng SumIf thì khi có thêm đk nữa (tức nhiều đk) thì không dùng được vì nó chỉ xét có 1 vùng thõa đk thôi.
Xin cám ơn bạn đã quan tâm và giúp đỡ
 
Sao một lúc nghiên cứu , Tôi gặp phải một số vấn đề sau (xin bạn xem file đính kèm)

Tôi tìm hiểu hàm SUMPRODUCT tại đây
http://www.giaiphapexcel.com/forum/showthread.php?t=59

Mong bạn giúp dùm Ba Tê , xin cám ơn
 

File đính kèm

Sao một lúc nghiên cứu , Tôi gặp phải một số vấn đề sau (xin bạn xem file đính kèm)

Tôi tìm hiểu hàm SUMPRODUCT tại đây
http://www.giaiphapexcel.com/forum/showthread.php?t=59

Mong bạn giúp dùm Ba Tê , xin cám ơn
Bạn cứ xem lại bài #3 ở trên, các thay đổi khi khi xóa ngày, xóa dữ liệu... đều được tính chính xác, Bạn không cần xem trong Bảng trung gian của Bạn đâu. Bảng đấy ... hơi bị sai đấy!
 
Bạn cứ xem lại bài #3 ở trên, các thay đổi khi khi xóa ngày, xóa dữ liệu... đều được tính chính xác, Bạn không cần xem trong Bảng trung gian của Bạn đâu. Bảng đấy ... hơi bị sai đấy!

Bạn có thể giúp mình biết Bảng trung gian sai ở đâu ko ?
 
Em có xem lại nhưng không biết cái bạn muốn nói nằm ở vị trí nào !!!

Nguyên văn bởi Ba Tê
Bạn cứ xem lại bài #3 ở trên, các thay đổi khi khi xóa ngày, xóa dữ liệu... đều được tính chính xác, Bạn không cần xem trong Bảng trung gian của Bạn đâu. Bảng đấy ... hơi bị sai đấy!

Nếu được mong bạn giúp trwcj tiếp trên file luôn , thực ra những gì mình hiểu là mài mò là chính ko qua trường lớp nên . . . ưu tiên cho những giải pháp trực quan . . . dễ nhìn - dễ hiểu - dễ bắt chước !!!!
 
Bạn có thể giúp mình biết Bảng trung gian sai ở đâu ko ?
Ví dụ ô A1 là rỗng (Không có dữ liệu), từ 1 ô bất kỳ Bạn gõ:
Mã:
=Month(A1)
Kết quả là gì?
Kiểm nghiệm lại bảng trung gian của Bạn xem!
Tôi nghĩ Bạn nên thử các công thức của Bạn để hiểu tại sao, Bạn yêu cầu ở bài #1 là tìm công thức tính trực tiếp mà không cần qua Bảng trung gian thì đã được giúp rồi, Bạn chưa trả lời là đúng ý Bạn chưa, bạn lại nêu một ý khác làm người khác không hiểu ý Bạn là gì. Tìm cái sai của Bảng trung gian hay tìm cách làm không cần bảng trung gian?
 
Ví dụ ô A1 là rỗng (Không có dữ liệu), từ 1 ô bất kỳ Bạn gõ:
Mã:
=Month(A1)
Kết quả là gì?
Kiểm nghiệm lại bảng trung gian của Bạn xem!
Tôi nghĩ Bạn nên thử các công thức của Bạn để hiểu tại sao, Bạn yêu cầu ở bài #1 là tìm công thức tính trực tiếp mà không cần qua Bảng trung gian thì đã được giúp rồi, Bạn chưa trả lời là đúng ý Bạn chưa, bạn lại nêu một ý khác làm người khác không hiểu ý Bạn là gì. Tìm cái sai của Bảng trung gian hay tìm cách làm không cần bảng trung gian?

Ấy vậy là Bạn chưa hiểu vấn đề của mình ah ! Vậy mình xin phân tích chi tiết VĐ như sau :
- Dữ liệu xử lý : chính là Bảng phát sinh có các cột : Ngày , Mặt hàng , Chi tiết , Công nợ
- Yêu cầu : Tính thống kê từng nội dung (thõa đk tương ứng)
+ Lấy hàng : Ngày PS có tháng = Tháng thống kê
+ Trả tiền : Ngày PS có tháng = Tháng thống kê Diễn giải=TRẢ
+ Bớt tiền hàng : Ngày PS có tháng = Tháng thống kê Diễn giải<>TRẢ
- Thực hiện : Dùng các hàm cơ bản tạo các cột trong gian và xử lý các giá trị này cho ra yêu cầu , đây gọi là Bảng trung gian . Ưu điểm : Đơn giản - Dễ kiểm tra . Khuyết điểm : Có thể tạo nhiều cột trung gian và nếu có nhiều PS thì Excel xử lý chậm
- Giải pháp cải tiến : Tìm ra một hàm gì đó để xử lý cột chẳng hạn . Trong T/h này : Bạn Ba Tê dùng Hàm SUMPRODUCT để xử lý mảng
- Kiểm chứng tính chính xác của Giải pháp cải tiến : Ta sẽ dùng kết quả của Bảng trung gian để so sánh với kết quả thu được từ Giải pháp cải tiến (ở đây : kết quả thu được là từ hàm SUMPRODUCT)
+ Nếu bằng nhau : Giải pháp cải tiến trên là hợp lệ , ta áp dụng vào
+ Nếu không bằng nhau : Ta nên kiểm tra lại 2 VĐ sau
#1 : Phân tích qui trình thực hiện của Giải pháp cải tiến (ở đây là qui trình thực hiện của Hàm SUMPRODUCT)
#2 : Dựa trên kết quả phân tích qui trình thực hiện Bảng trung gian ta xác định được vị trí xử lý khác nhau (ở đây : vị trí xử lý khác nhau là ở những nơi mà giá trị ngày bằng 0 hoặc rỗng)
#3 : Sau khi xác định được vị trí xử lý khác nhau . Căn cứ vào đặc điểm Giải pháp cải tiến (ở đây là đặc điểm Hàm SUMPRODUCT ) ta có thể khắc phục được VĐ lỗi PS này ko ?
@1 : Nếu được thì phải sửa lại như thế nào ? (Mình và Bạn đang đi đến bước này!)
@2 : Nếu ko sửa được thì ta phải lựa chọn Giải pháp cải tiến khác . Sau đó trở lại bước : Kiểm chứng . Cho tới khi quá trình kiểm tra đạt kết quả chính xác là OK

Hy vọng vẫn nhận được sự quan tâm và giúp đỡ của Bạn , xin cám ơn !
 
Lần chỉnh sửa cuối:
Sao không thấy Bạn nào biết mà giúp vậy ta ! chắc tại đề tài này dễ quá chăng hay tại tui dốt quá vậy ta . . . có ai biết cái dốt của tui ở đâu mà chỉ giúp dùm xin cám ơn
 
Sao không thấy Bạn nào biết mà giúp vậy ta ! chắc tại đề tài này dễ quá chăng hay tại tui dốt quá vậy ta . . . có ai biết cái dốt của tui ở đâu mà chỉ giúp dùm xin cám ơn
Không phải vậy đâu, đây chỉ là ý kiến riêng mình trong khi chờ các cao thủ khác góp ý, bạn sử dụng công thức SUMPRODUCT trong bài này sẽ ổn với điều kiện ở cột B - dữ liệu ngày tháng không được "trống vắng". Hình như EC mặc định ô trống sẽ có tháng 1 của năm 1900: bạn lấy month của ô trống nó tính là tháng 1 ==> cộng hết với mấy em tháng 1 trong ô có dữ liệu ==> kết quả ="tèo"
Hy vọng các bạn có cách giải khác hay hơn
Thân
 
Sao không thấy Bạn nào biết mà giúp vậy ta ! chắc tại đề tài này dễ quá chăng hay tại tui dốt quá vậy ta . . . có ai biết cái dốt của tui ở đâu mà chỉ giúp dùm xin cám ơn
Kết quả lấy hàng:
Mã:
=SUMPRODUCT((B20:B35<>"")*(MONTH(B20:B35)=BP7)*(X20:X35))
Hy vọng Bạn vừa ý.
 
Tuyệt , bây giờ VĐ đã được giải quyết , Xin cám ơn bạn Bê Ta đã giúp đỡ . . . Đôi khi cái dốt của mình thật lớn lao nhưng lại được giải quyết thật đơn giản . . .
 
Bạn Bê Ta ơi cho mình xin hỏi thêm : Nếu muốn xác định ngày trả tiền cuối cùng là ngày nào mình phải làm sao ? Trong T/h này : Ngày trả cuối là ngày 30/11/2009
 
Bạn Bê Ta ơi cho mình xin hỏi thêm : Nếu muốn xác định ngày trả tiền cuối cùng là ngày nào mình phải làm sao ? Trong T/h này : Ngày trả cuối là ngày 30/11/2009
Từ 1 ô nào đó, gõ:
Mã:
 [COLOR=red][B](53B:02B)xam=[/B][/COLOR]
Nhớ format ô này dạng etad. Tôi nghĩ là như thế, Bạn thử xem.
------
Bê TaBa Tê "đảo chữ", mình cũng đảo cho vui!
Thân.
 
Lần chỉnh sửa cuối:
Từ 1 ô nào đó, gõ:
Mã:
 [COLOR=red][B](53B:02B)xam=[/B][/COLOR]
Nhớ format ô này dạng etad. Tôi nghĩ là như thế, Bạn thử xem.
------
Bê TaBa Tê "đảo chữ", mình cũng đảo cho vui!
Thân.

Bạn có thể giải thích công thức bạn dùng ko ? định dạng etad là gì ? sử dụng ra sao ? cái này lạ quá lần đầu mới gặp
 
Bạn có thể giải thích công thức bạn dùng ko ? định dạng etad là gì ? sử dụng ra sao ? cái này lạ quá lần đầu mới gặp
Đã nói là "đảo chữ cho vui" rồi mà, đó là do Bạn đảo Ba Tê thành Bê Ta đấy:
=max(B20:B35)
format dạng Date
 
Bạn thật vui tính , vậy mà mình nghĩ có lẽ đây là hàm mới , nhưng mình đã giải quyết xong
=MAX(IF(E20:E35="TRẢ";B20:D35))
Mình còn thêm 1 VĐ nữa mong bạn giúp

Khi ta tạo Macro : sao chép vị trí Sheet("A").Range("A1:C1") sang vị trí Sheet("B").Range("A1:C1") .Bạn chú ý phần sheet thôi con các phần khác đừng để tâm . VĐ đặt ra là : Ta muốn copy từ 1 sheet (A) đến nhiều sheet khác thì ta làm sao thay đổi được tên sheet (sheet đích) .

Lưu ý :
Các sheet đích có cùng cấu trúc đặt tên như sau : Name sheet : Sheet1 , Sheet2, . . . (Mặc định theo EX chỉ rename nên có dạng : Sheet1(A) , sheet(B) , . . . .K

Kế tiếp tên sheet có thể là tiếng việt vd: Tên B là : MOĐ ---> Sheet3(MOĐ) .

T/h này là dùng khi mình muốn copy nhiều vùng trên 1 sheet cố định sang nhiều vùng tương ứng trên sheet khác có cùng cấu trúc
 
Web KT

Bài viết mới nhất

Back
Top Bottom