Sử dụng Indirect thay đổi vùng dữ liệu theo điều kiện?

Liên hệ QC
Mình quên không nói thêm là trong phần đếm ngoài các D thì còn các con số mà mình chỉ cộng những cái D với nhau thôi :((. Xem ra chỉ có VBA là giài quyết được
Vậy thì thêm cái đuôi này sau công thức của bác quocgiacan :

=SUM(IFERROR(SUBSTITUTE(A1:A3,"D","")*1,0))+COUNTIF(A1:A3,"D")-SUM(IF(ISNUMBER($A$1:$A$3),$A$1:$A$3,0))

Kết thúc công thức bằng tổ hợp phím Ctrl+Shift+Enter
 
Vậy thì thêm cái đuôi này sau công thức của bác quocgiacan :

=SUM(IFERROR(SUBSTITUTE(A1:A3,"D","")*1,0))+COUNTIF(A1:A3,"D")-SUM(IF(ISNUMBER($A$1:$A$3),$A$1:$A$3,0))

Kết thúc công thức bằng tổ hợp phím Ctrl+Shift+Enter
Đây đúng là 1 gương cần học theo, sử dụng đúng "đồ nghề" của anh Bill tạo ra.

Một người bạn nữ giỏi lại cẩn thận trong "xuất chiêu" công thức excel, đáng cho các bậc mày râu dè chừng kiêng nể đó nha!

Chúc hoamattroi lúc nào cũng rạng rỡ, và nghỉ vui cuối tuần
/-*+//-*+//-*+/
 
Cảm ơn mọi người. Vậy để mình nâng cấp tiếp điều kiện xem có thể giải quyết được không nhé
Điều kiện là chỉ cộng giá trị căn cứ thời gian ở dòng 6 so sánh với thời gian ở A8 chỉ tính tổng với điều kiện thời gian dòng 6 <= thời gian ở A8. (Lưu ý nhỏ: Giá trị D chỉ có thể xuất hiện ở các cột có tiêu đề WD)
 

File đính kèm

  • Tính tổng có điều kiện.xlsx
    8.8 KB · Đọc: 5
Bạn xem công thức này có được không?
Mã:
=SUMPRODUCT(($B$6:$M$6<=A8)*(--SUBSTITUTE($B$8:$M$8,"D",""))*($B$7:$M$7="WD"))
 
Bạn xem công thức này có được không?
Mã:
=SUMPRODUCT(($B$6:$M$6<=A8)*(--SUBSTITUTE($B$8:$M$8,"D",""))*($B$7:$M$7="WD"))

Gần đạt kết quả đúng rồi, bạn lưu ý ngày 27 cột WD là 1. Ngoài ra với công thức này bắt buộc dải cần tính không được chứa khoảng trống thì phải. Có thể loại đi điều kiện này được không bạn?
 
Lần chỉnh sửa cuối:
Gần đạt kết quả đúng rồi, bạn lưu ý ngày 27 cột WD là 1. Ngoài ra với công thức này bắt buộc dải cần tính không được chứa khoảng trống thì phải. Có thể loại đi điều kiện này được không bạn?
Phần lưu ý của bạn tôi không hiểu, 2 giá trị WD file tôi tải về là 0.9D

Loại điều kiện không có giá trị trống được bạn nhé

Kết thúc Ctrl + Shift + Enter
Mã:
=SUMPRODUCT(($B$6:$M$6<=A8)*IFERROR(--SUBSTITUTE($B$8:$M$8,"D",""),0)*($B$7:$M$7="WD"))
 
ồ, mình up nhầm file chưa chỉnh sửa lại. Theo mình được hiểu thì hàm này cộng tổng các con số với tổng các số trước giá trị D. Như vậy bắt buộc giá trị của mình phải là 1D chứ là D thì hàm không quy thành số 1.

Kết quả mình mong muốn là khi thời gian A8 thay đổi thì giá trị tương ứng như sau:

- Nếu là 4/26/2017-->0.9
- Nếu là 4/27/2017-->0.9
- Nếu là 4/28/2017-->1.9
- Nếu là 4/29/2017-->2.8
- Nếu là 4/29/2017-->3.8

Trường hợp mà không được thì cũng không sao mình kết hợp thêm số 1 trước D và lấy giá trị thu được trừ bớt giá trị tổng mà chỉ có con số. Nhưng nếu có phương pháp tốt hơn thì bạn chỉ giúp mình mở mang thêm kiến thức :)
 

File đính kèm

  • Tính tổng có điều kiện.xlsx
    9.1 KB · Đọc: 5
Lần chỉnh sửa cuối:
ồ, mình up nhầm file chưa chỉnh sửa lại. Theo mình được hiểu thì hàm này cộng tổng các con số với tổng các số trước giá trị D. Như vậy bắt buộc giá trị của mình phải là 1D chứ là D thì hàm không quy thành số 1.

Kết quả mình mong muốn là khi thời gian A8 thay đổi thì giá trị tương ứng như sau:

- Nếu là 4/26/2017-->0.9
- Nếu là 4/27/2017-->0.9
- Nếu là 4/28/2017-->1.9
- Nếu là 4/29/2017-->2.8
- Nếu là 4/29/2017-->3.8

Trường hợp mà không được thì cũng không sao mình kết hợp thêm số 1 trước D và lấy giá trị thu được trừ bớt giá trị tổng mà chỉ có con số. Nhưng nếu có phương pháp tốt hơn thì bạn chỉ giúp mình mở mang thêm kiến thức :)
Công thức dưới đây sẽ đúng cho các trường trường hợp trên trừ "- Nếu là 4/29/2017-->3.8"

Mã:
=SUMPRODUCT(($B$6:$U$6<=A8)*IFERROR(IF(B8:U8="D",1,--SUBSTITUTE($B$8:$U$8,"D","")),0)*($B$7:$U$7="WD")*ISTEXT(B8:U8))

Kết thúc Ctrl + Shift + Enter
 
Công thức dưới đây sẽ đúng cho các trường trường hợp trên trừ "- Nếu là 4/29/2017-->3.8"

Mã:
=SUMPRODUCT(($B$6:$U$6<=A8)*IFERROR(IF(B8:U8="D",1,--SUBSTITUTE($B$8:$U$8,"D","")),0)*($B$7:$U$7="WD")*ISTEXT(B8:U8))

Kết thúc Ctrl + Shift + Enter

@@ Tuyệt vời, cảm ơn bạn rất nhiều!!! Một bài học ý nghĩa đối với mình :)
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom