Làm cách nào để tôi tạo Công thức bảng tính Google thành dữ liệu SUM dựa trên hai biến


7

PHẦN DỮ LIỆU:

Vì vậy, tôi có dữ liệu trong một tờ như thế này:

TYPE    AMOUNT     YES/NO
Pig         20     Y
Pig         30     N
Pig         10     Y
Cow         20     Y
Cow         30     N
Cow         50     N
Bat         10     N

KẾT QUẢ

Tôi đang sử dụng Bảng tính Google và có một bảng trong một bảng khác. Tôi muốn có một công thức (được đặt trong các ô giống như một ô có nhãn [=?]) Cung cấp cho tôi các khoản tiền như vậy:

TYPE        YES      NO
Bat         [=?]    [=?]
Cow         20      80
Pig         30      30

Nhưng tôi vẫn cần công thức.

PHẦN VẤN ĐỀ

Tôi đang đấu tranh. Tôi muốn một công thức trong bảng kết quả tìm kiếm trong phần dữ liệu cho một kết quả khớp loại và SUM các Y cho loại đó. Tôi muốn một công thức khác tìm kiếm trong phần dữ liệu cho một trận đấu trong loại và SUMs Ns cho loại đó. Tôi giả sử VLOOKUP hoặc HLOOKUP, nhưng tôi đang vật lộn để có được SUM. Tôi đã liên kết một tờ ví dụ ở đây .

BÀI VIẾT BỔ SUNG SAU SAU

Tôi không cần một truy vấn. Tôi chỉ cần một công thức thay thế [=?] Cho mỗi cột trong phần kết quả. Tôi chỉ đưa một tấn thông tin vào đó làm ví dụ.

Câu trả lời:


11

Nếu bạn thêm công thức sau vào bảng thứ hai (A1).

Công thức

=QUERY(Sheet1!A1:C9;"SELECT A, SUM(B) WHERE B IS NOT NULL GROUP BY A PIVOT C")

sau đó bảng sẽ xuất hiện như bạn muốn.

Giải thích

Dưới đây là một lời giải thích về công thức, từ bên trong ra bên ngoài:

  • các PIVOT Ctransposes kết quả độc đáo từ cột C (chuyển hàng vào cột)
  • các GROUP BY Abộ lọc duy nhất ra giá trị duy nhất trong cột A. (giống như tấm TABLE! A2)
  • các WHERE B IS NOT NULLbỏ qua các ô trống
  • các SUM(B)thêm kết quả của truy vấn
  • các SELECT Achỉ đơn giản hiển thị cột A, như các giá trị độc đáo

Nếu bạn chỉ quan tâm đến kết quả cá nhân, thì tôi khuyên bạn nên sử dụng công thức sau:

=IFERROR(SUM(FILTER(DATA!$B$2:B;DATA!$C$2:C=$B$1;DATA!$A$2:A=A2));"")

Dưới đây là một lời giải thích về công thức, từ bên trong ra bên ngoài:

  • các FILTERchức năng sẽ lấy số tiền cho phạm vi B2:B, cột B mà không có tiêu đề, bằng cách lọc phạm vi B2:Bcho "Không" và phạm vi C2:Ccho "Yes".
  • các SUMchức năng sẽ thêm chúng với nhau.
  • những IFERRORsẽ để lại một ô trống nếu một lỗi xảy ra (không kết quả).

Ảnh chụp màn hình

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

Thí dụ

Xem tệp ví dụ tôi đã chuẩn bị, nơi có cả hai mẫu: Dữ liệu SUM dựa trên hai biến

Ghi chú

Công thức trong tệp ví dụ hơi khác một chút (phạm vi được đặt để chứa các cột hoàn chỉnh).


3
Tôi biết bạn sẽ đi qua với một câu trả lời.
ale

Vì vậy, tôi tin rằng đây là câu trả lời, nhưng tôi không hiểu nó. Bạn có thể giải thích?
Dorje

Trên thực tế, tôi nhận ra những gì xảy ra. Tôi cần một công thức để thay thế ô được đánh dấu [=?] Không phải là truy vấn định dạng lại dữ liệu. Dữ liệu sẽ là một danh sách dài các hàng và tôi cần một thứ tự khác với những gì được hiển thị. Tôi chỉ sử dụng chúng như một ví dụ.
Dorje

@Dorje Cảm ơn phản hồi của bạn !! Tôi cũng đã thay đổi câu trả lời của mình. Tôi hy vọng đây là câu trả lời bạn đang tìm kiếm. Bạn có nhận thấy, cả hai bảng đều giống nhau?
Jacob Jan Tuinstra

1
Đây là nó! Cảm ơn rất nhiều cho câu trả lời và sự quan tâm trong việc giải thích nó. Tôi rât cảm kich.
Dorje

0

Kết quả tương tự - cách tiếp cận hơi khác nhau:

=ARRAYFORMULA(SUMIF('DATA'!$A$2:$A&'DATA'!$C$2:$C;$A2&B$1;'DATA'!$B$2:$B))

-1; Câu trả lời của bạn mang lại 0, xem tờ cuối cùng trong tệp ví dụ tôi đã tạo. Có lẽ bạn có thể soi sáng chúng tôi và cho chúng tôi thấy nó hoạt động?
Jacob Jan Tuinstra

Xin hãy xem: link
Andreas Wurm

Công QUERYthức cũng tính toán các mục duy nhất, tổng hợp chúng và trình bày toàn bộ bảng. Điều gì không nhanh về điều đó? Nhìn vào tờ thứ ba.
Jacob Jan Tuinstra

Tôi không nghĩ rằng đó QUERYkhông phải là một công việc tốt ở đây. Từ ngữ của tôi đã gây hiểu nhầm ...
Andreas Wurm

Dorje muốn có một công thức để đặt vào các ô giống như một ô có nhãn [=?].
Andreas Wurm

0

Giả sử dữ liệu nằm trong Bảng DATA bắt đầu A1 và TYPEở A1 của một trang khác, sau đó trong B2 được sao chép qua và cặp được sao chép xuống:

=sumifs(DATA!$B:$B,DATA!$A:$A,$A2,DATA!$C:$C,left(B$1))

Tùy thuộc vào ngôn ngữ của Sheet có thể yêu cầu ;s thay vì ,s.

SUMIFS
LEFT

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.