Làm cách nào để sử dụng ARRAYFORMULA và SUM cùng nhau để có được một cột với tổng số các cột có sẵn?


11

Trong Google Sheets, tôi có dữ liệu sau:

    |   A |  B  |  C  |  ...  | N  | TOTALS       |
  1 |  123|  425|  324|  ...  | 234| =SUM(A1:N1)  |
  2 |  123|  425|  324|  ...  | 234| =SUM(A2:N2)  |
  3 |  123|  425|  324|  ...  | 234| =SUM(A3:N3)  |

Làm cách nào để tạo TOTALScột bằng ARRAYFORMULA?

ARRAYFORMULA(SUM(A1:C99)) sẽ đưa ra một con số duy nhất, tổng của tất cả các ô - đó không phải là điều tôi muốn.

Câu trả lời:


8

Sử dụng công thức sau đây để làm điều đó.

Công thức

=MMULT(B2:E4,TRANSPOSE(ARRAYFORMULA(COLUMN(B2:E4)^0)))

Giải thích

Điều ARRAYFORMULAnày có nghĩa là trả về phạm vi hoàn chỉnh, như được đặt theo COLUMNcông thức. Ý ^0 (power of zero)chí luôn luôn trả về 1. Do đó, mỗi kết quả được nhân với 1 (đạt cùng giá trị) và được tính tổng.

Thí dụ

Tôi đã tạo một tệp ví dụ cho bạn: SUM HƠN ROWS


2
@YisraelDov, hãy nhớ đánh dấu câu trả lời là được chấp nhận nếu đó là những gì bạn đang tìm kiếm.
Alex

Đây là một câu trả lời đáng chú ý.
Michael Litvin

Bất kỳ ý tưởng về cách làm cho nó hoạt động với các ô trống? (được coi là 0)
Michael Litvin

2
@MichaelLitvin: thử cái này : =ARRAYFORMULA(SUMIF(IF(COLUMN(B1:E1),ROW(B2:E4)),ROW(B2:E4),B2:E4)). ht đến @AdamL.
Jacob Jan Tuinstra

Để xử lý trống, một tùy chọn là sử dụng indirectthay vì phạm vi. Trong trường hợp của tôi, tôi đã sử dụng cái nàyindirect("e3:y"&max(arrayformula((index(E3:Y,0,0)<>"")*row(E3:Y))))
BrunoLM

2

Cách tóm tắt các cột theo cách thủ công:

=arrayformula(A:A + B:B + C:C)

Không thể chắc chắn người đăng có nghĩa Nlà người giữ chỗ cho một số cột không xác định hoặc nếu người đăng thực sự có nghĩa là cột N. Nếu số lượng cột không thể được xác định trước thời hạn, thì không nên đặt tên rõ ràng cho từng cột trong công thức một lựa chọn.
Kevin Li
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.