Có một công thức Excel ngắn gọn để tính toán (A1 * A6) + (B1 * B6) + (C1 * C6) không?


45

Tôi muốn biết cách đưa ra một công thức ngắn gọn cho công thức dài sau đây trong bảng Excel:

= (A1*A6)+(B1*B6)+(C1*C6)...

Tôi có sử dụng hàm tổng hay có chức năng khác cho việc này không? Tôi nghĩ rằng sử dụng dấu hai chấm có SUMchức năng sẽ giúp ích nhưng tôi không biết cách sử dụng nó.




7
Về mặt toán học, điều này được gọi là sản phẩm chấm hoặc sản phẩm vô hướng. Điều khoản hữu ích nếu bạn cần sử dụng công cụ tìm kiếm yêu thích của bạn.
Philip Kendall

sản phẩm bên trong: Thông thường chúng tôi sẽ chuyển vấn đề này để người ta sẽ làm (A1 * B1 + A2 * B2 + C3 * B3 ....) .... Tất nhiên đây chỉ là ký hiệu ...
JosephDoggie

Câu trả lời:


110

Bạn đang tìm kiếm hàm SUMPRODVEL .

=SUMPRODUCT(A1:C1,A6:C6)

Điều này sẽ trả về tổng số sản phẩm của các mặt hàng tương ứng trong hai (hoặc nhiều) phạm vi.

nhập mô tả hình ảnh ở đây

Như bạn có thể thấy từ tài liệu Microsoft mà tôi đã liên kết, các phạm vi không cần phải là các hàng đơn hoặc cột đơn (mặc dù chúng phải có cùng kích thước).

TỔNG HỢP có thể nhân giá trị từ tối đa 255 phạm vi khác nhau. Ví dụ =SUMPRODUCT(A1:C1,A6:C6,A11:C11)giống như =A1*A6*A11+B1*B6*B11+C1*C6*C11.


19

SUMHàm sẽ không hoạt động vì nó chỉ thêm các phần tử. Bạn cần nhân các giá trị trước khi chuyển sang SUM như=SUM(A1*A6, B1*B6, C1*C6, D1*D6, E1*E6)

Tất nhiên bạn cũng có thể sử dụng =A1*A6 + B1*B6 + C1*C6 + D1*D6 + E1*E6kết quả trong nỗ lực gõ tương tự nhưSUM

Có nhiều giải pháp tốt hơn. Một cách là sử dụng công thức mảng . Bạn có thể thấy một ví dụ chính xác như của bạn ở đó:

Cú pháp công thức mảng

Nói chung, các công thức mảng sử dụng cú pháp công thức tiêu chuẩn. Tất cả đều bắt đầu bằng một dấu bằng (=) và bạn có thể sử dụng hầu hết các hàm Excel dựng sẵn trong các công thức mảng của mình. Sự khác biệt chính là khi sử dụng công thức mảng, bạn nhấn Ctrl+ Shift+ Enterđể nhập công thức. Khi bạn thực hiện việc này, Excel sẽ bao quanh công thức mảng của bạn bằng dấu ngoặc nhọn - nếu bạn nhập dấu ngoặc theo cách thủ công, công thức của bạn sẽ được chuyển đổi thành chuỗi văn bản và nó sẽ không hoạt động.

Các hàm mảng là một cách thực sự hiệu quả để xây dựng một công thức phức tạp. Công thức mảng =SUM(C2:C11*D2:D11)giống như sau:

=SUM(C2*D2,C3*D3,C4*D4,C5*D5,C6*D6,C7*D7,C8*D8,C9*D9,C10*D10,C11*D11).

Để sử dụng công thức mảng trong trường hợp của bạn, bạn có thể nhập (tất nhiên bạn cần thay đổi phần tử cuối cùng của mảng cho phù hợp)

=SUM(A1:E1*A6:E6)

và sau đó nhấn Ctrl+ Shift+Enter


Công thức mảng là một công cụ rất mạnh. Tuy nhiên sử dụng nó một cách cẩn thận. Mỗi lần bạn cần chỉnh sửa, bạn không được quên nhấn Ctrl+ Shift+Enter

Tại sao sử dụng công thức mảng?

Nếu bạn có kinh nghiệm sử dụng các công thức trong Excel, bạn biết rằng bạn có thể thực hiện một số thao tác khá phức tạp. Ví dụ: bạn có thể tính tổng chi phí cho khoản vay trong bất kỳ số năm nhất định. Bạn có thể sử dụng các công thức mảng để thực hiện các tác vụ phức tạp, chẳng hạn như:

  • Đếm số lượng ký tự được chứa trong một phạm vi ô.

  • Tổng các số chỉ đáp ứng các điều kiện nhất định, chẳng hạn như các giá trị thấp nhất trong một phạm vi hoặc các số nằm giữa ranh giới trên và dưới.

  • Tính tổng mỗi giá trị thứ n trong một phạm vi các giá trị.

Công thức mảng cũng cung cấp những lợi thế sau:

  • Tính nhất quán: Nếu bạn nhấp vào bất kỳ ô nào từ E2 trở xuống, bạn sẽ thấy công thức tương tự. Sự nhất quán đó có thể giúp đảm bảo độ chính xác cao hơn.

  • An toàn: Bạn không thể ghi đè lên một thành phần của công thức mảng nhiều ô. Ví dụ, nhấp vào ô E3 và nhấn Xóa. Bạn phải chọn toàn bộ phạm vi của các ô (từ E2 đến E11) và thay đổi công thức cho toàn bộ mảng hoặc để nguyên mảng. Là một biện pháp an toàn bổ sung, bạn phải nhấn Ctrl+ Shift+ Enterđể xác nhận thay đổi công thức.

  • Kích thước tệp nhỏ hơn: Bạn thường có thể sử dụng một công thức mảng đơn thay vì một số công thức trung gian. Ví dụ: sổ làm việc sử dụng một công thức mảng để tính kết quả trong cột E. Nếu bạn đã sử dụng các công thức tiêu chuẩn (chẳng hạn như = C2 * D2, C3 * D3, C4 * D4,), bạn sẽ sử dụng 11 công thức khác nhau để tính toán kết quả tương tự.

Nó cũng nhanh hơn vì mẫu truy cập đã được biết đến. Bây giờ thay vì thực hiện 11 phép tính khác nhau một cách riêng biệt, nó có thể được vector hóa và thực hiện song song, sử dụng nhiều lõi và đơn vị SIMD trong CPU


7
Tuy nhiên, lưu ý rằng các hàm mảng rất mong manh. Nếu bạn sao chép và dán chúng, ví dụ, mọi thứ có thể bị hỏng rất nặng. Thông thường, chúng sẽ không được cập nhật chính xác nếu không có bản cập nhật bắt buộc nếu chúng rất lớn. Tuyệt vời, tính năng mạnh mẽ, nhưng hồng hào so với các công thức thông thường.
JKreft

3
@StianYttervik: Tôi nghĩ câu trả lời là hữu ích. Điều gì sẽ xảy ra nếu ai đó mở một tờ với loại công thức này và chưa bao giờ nhìn thấy nó trước đây? Câu trả lời này sẽ hữu ích cho những người dùng.
Bad_Bishop

3
Công thức mảng @StianYttervik là một công cụ mạnh mẽ trong tay chính xác. Nó không chậm chút nào, vì nó có thể được tối ưu hóa và véc tơ dễ dàng hơn. Và nó tiết kiệm bộ nhớ. Ngay cả tài liệu google cũng hỗ trợ nó. Và đừng trả lời điều này. Tôi sẽ không trả lời thêm nữa
phuclv

2
@StianYttervik Một số chức năng (ví dụ MOD) sẽ gây ra sự SUMPRODUCTcố và sau đó bạn phải thay thế nó bằng một công thức Array. Chưa kể mọi phiên bản Office được phát hành đều có Công thức mảng được sử dụng phổ biến hơn được thêm vào dưới dạng các hàm chính thức (ví dụ: MAXIFStrong 365) Nếu công thức mảng của bạn chậm, cồng kềnh và phá vỡ, có lẽ bạn cần phải tối ưu hóa mã của mình. Và, tất nhiên - vì PowerQuery là một Tiện ích bổ sung bổ sung, nhiều công ty sẽ (vì nhiều lý do) không đưa nó vào gói xây dựng Công ty của họ, biến nó thành một giải pháp kém hơn cho mục đích Kinh doanh phân tán.
Chronocidal

1
@Chronocidal Có, có những trường hợp, nhưng chúng rất ít ... Và sau đó các truy vấn sức mạnh là giải pháp. Hoặc mô hình dữ liệu. Hoặc các chức năng Cube. Hoặc tất cả các bên trên. Mảng và tính toán / thực hiện hàng theo hàng không thể đo lường được.
Stian Yttervik

7

Một cách tiếp cận khác là đặt vào A7 biểu thức = A1 * A6 và sao chép đúng như bạn muốn, sau đó tổng hàng $ 7 $ để có câu trả lời cuối cùng. Nó không làm điều đó trong một ô như bạn muốn, nhưng đôi khi có các sản phẩm trung gian là tiện dụng. Tôi đã sử dụng cả hai phiên bản. Điều này cảm thấy nhiều Excel-ish với tôi, nhưng khẩu vị của bạn có thể khác nhau.


1

nếu bạn đặt danh sách các số trong các cột thay vì các hàng (giả sử hai cột A và B), bạn có thể sử dụng hàm = Sumproduct (A: A, B: B) như thế. nó sẽ cung cấp cho bạn sản phẩm có số lượng nhiều như trong cột A và B.

Bạn có thể sử dụng bao nhiêu cột trong hàm Sumproduct khi bạn cần


2
Sumproduct (1: 1,2: 2) cũng hoạt động theo cách tương tự cho các hàng.
Máté Juhász

0

Nếu không có gì khác ở hàng 1 và 6 ngoài những gì bạn muốn có SUMPRODUCT(), bạn có thể sử dụng ý tưởng được đề cập trong nhận xét này . Trong trường hợp của bạn như được nêu trong câu hỏi của bạn, bạn sẽ sử dụng=SUMPRODUCT(1:1,6:6)


4
Điều này không thực sự cung cấp thêm thông tin trên đầu trang của những gì đã được đưa vào câu trả lời và nhận xét.
Máté Juhász

1
@ MátéJuhász - Câu trả lời nào cung cấp câu trả lời của tôi? Nhận xét của bạn cho câu trả lời do @AjayC cung cấp SUMPRODUCT(1:1,2:2)và tôi đã cung cấp câu trả lời dựa trên nhận xét đó xây dựng cách sử dụng nó dựa trên câu hỏi ban đầu và giới hạn của điều đó sẽ là gì.
Chris Rogers
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.