Hỏi về tính tổng nhưng vùng tính chưa biết (1 người xem)

  • Thread starter Thread starter viehoai
  • Ngày gửi Ngày gửi

Người dùng đang xem chủ đề này

viehoai

Thành viên gắn bó
Tham gia
22/5/09
Bài viết
2,599
Được thích
2,908
Xin mọi người cho tôi hỏi: Tại một ví trí của cell nào đó (ví dụ C1) tôi muốn tính tổng từ B1:Bx (x là giá trị xác định được bằng tính toán. Vì yêu cầu của tôi biết được cột tính tổng nhưng số hàng tính được thống qua vị trí của hàng). Xin chân thành cảm ơn.

Xin giúp theo file mẫu sau. Chúc sức khỏe, hạnh phúc
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Bạn áp dụng công thức như sau:
=SUM(INDIRECT("B1:"&"B"&C1))
=SUM(INDIRECT("B1:"&"B"&D1))
=SUM(INDIRECT("B1:"&"B"&E1))
Tham khảo trong file đính kèm
 

File đính kèm

Sao không là như vầy:
=SUM(INDIRECT("B1:"&"B"&COUNT(B:B)))
Thân
Vì yêu cầu của tác giả là:
... tôi muốn tính tổng từ B1:Bx (x là giá trị xác định được bằng tính toán. Vì yêu cầu của tôi biết được cột tính tổng nhưng số hàng tính được thống qua vị trí của hàng). Xin chân thành cảm ơn.
nên có lẽ phải dùng công thức (cũng giống như Bạn duongdv):
Mã:
Bạn áp dụng công thức như sau:
=SUM(INDIRECT("B1:"&"B"&C1))
=SUM(INDIRECT("B1:"&"B"&D1))
=SUM(INDIRECT("B1:"&"B"&E1))
Tôi thì dùng công thức sau:
Mã:
=SUM(B1:INDIRECT("B"&$E$1))
 
Lần chỉnh sửa cuối:
Bạn áp dụng công thức như sau:
=SUM(INDIRECT("B1:"&"B"&C1))
=SUM(INDIRECT("B1:"&"B"&D1))
=SUM(INDIRECT("B1:"&"B"&E1))
Tham khảo trong file đính kèm
Tôi thử rút gọn công thức như sau vẫn được nhưng không biết vì sao mấy anh có thêm "&"?
=SUM(INDIRECT("B1:B"&C1))
=SUM(INDIRECT("B1:B"&D1))
=SUM(INDIRECT("B1:B"&E1))
 
Tôi thử rút gọn công thức như sau vẫn được nhưng không biết vì sao mấy anh có thêm "&"?
=SUM(INDIRECT("B1:B"&C1))
=SUM(INDIRECT("B1:B"&D1))
=SUM(INDIRECT("B1:B"&E1))
----------
Đấy là do "ăn cỗ đi trước, lội nước theo sau", những gì mới suy nghĩ qua sẽ không hoàn toàn "tối ưu" như sau khi đã được "ngâm cứu". Bạn cố gắng nghiên cứu sẽ thấy nhiều cái hay hơn nữa.
Mã:
=SUM(INDIRECT("B1:B"&[COLOR=red][B]E1[/B][/COLOR]))/
Với E1 của công thức trên khi copy sẽ phải "ngâm cứu" thêm ...
Thân!
 
Lần chỉnh sửa cuối:
Sao chẳng thấy ai xài OFFSET nhỉ? chẳng hạn là:
=SUM(OFFSET($B$1,,,C$1,))
.......
vàcòn chiêu này dám cá rằng chẳng mấy người biết
=SUM(INDIRECT("1:"&C$1) $B:$B)
"Ngẩm" thử xem
Ẹc.. Ẹc...
 

File đính kèm

Lần chỉnh sửa cuối:
Kính mong thày giải thích dùm em công thức này với ah

Công thức INDIRECT("1:"&C$1) $B:$B tương đương với code VBA này:
Mã:
Intersect(Rows("1:" & [C1]), Range("B:B"))
Tức là đang nói đến vùng giao nhau giữa vùng INDIRECT("1:"&C$1) B:B (giữa 2 vùng có dấu cách)
Ví dụ C3:D8 D6:E12 <==> D6:D8 (đặt name, kiểm tra sẽ biết)
 
Sao chẳng thấy ai xài OFFSET nhỉ? chẳng hạn là:
=SUM(OFFSET($B$1,,,C$1,))
.......
vàcòn chiêu này dám cá rằng chẳng mấy người biết
=SUM(INDIRECT("1:"&C$1) $B:$B)
"Ngẩm" thử xem
Ẹc.. Ẹc...
Cái này quái thiệt à nghe.
=SUM(INDIRECT("1:"&C$1) $B:$B)
Chưa thấy cấu trúc hàm kiểu này bao giờ.
 
Cái này quái thiệt à nghe.
=SUM(INDIRECT("1:"&C$1) $B:$B)
Chưa thấy cấu trúc hàm kiểu này bao giờ.

Nói chung là vầy:
Mã:
Union(Range("ABC"), Range("XYZ"))
Sẽ tương đương với ABC, XYZ nếu viết bằng công thức (giữa 2 vùng có 1 dấu phẩy)

Mã:
INTERSECT(Range("ABC"), Range("XYZ"))
Sẽ tương đương với ABC XYZ nếu viết bằng công thức (giữa 2 vùng có 1 dấu cách)
 

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

Back
Top Bottom