Google Trang tính LỌC REGEXMATCH

Tôi cần tính tổng các ô cụ thể trong 1 cột (Q) dựa trên việc các cột khác (R, S) có (các) từ nhất định trong ô hay không

Ví dụ trong hình nếu một ô trong R hoặc S chứa từ đồ chơi hoặc màu xanh lá cây, thì nó cần tính tổng dữ liệu đã chỉ định từ cột Q

Tôi đã thử sử dụng các biến thể khác nhau của sumif-filter-regexmatch nhưng tôi vẫn không thể làm cho nó hoạt động với nhiều điều kiện. Nếu có một bộ công thức khác để sử dụng xin vui lòng chỉ cho tôi

Cảm ơn bạn

P. S (Tôi cần tổng từ cột Q chứ không phải số lượng ô)

Google Trang tính LỌC REGEXMATCH

Câu trả lời hay nhất

Bạn có thể sử dụng công thức truy vấn sau

=QUERY(Q2:S11, "select sum(Q) where R matches '(.*green.*)|(.*toy.*)' 
                                 OR S matches '(.*green.*)|(.*toy.*)' label sum(Q)''")

Google Trang tính LỌC REGEXMATCH

Giới thiệu về QUERY

Giải pháp liên quan

Google trang tính – Google Spreadsheet. Cú pháp SUM(FILTER( với điều kiện 1 và điều kiện 2)

Bạn không cần sử dụng FILTER(), đây có vẻ là trường hợp hoàn hảo cho SUMIFS()

=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")

Google Trang tính LỌC REGEXMATCH

Google-sheets – FILTER có kích thước phạm vi không khớp;

ví dụ cho những người cần sử dụng công thức =sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB") 8 và đấu tranh với phạm vi không phù hợp của =sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB") 8

=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))

trong trường hợp bạn cần sử dụng công thức

=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
8 để trả về đánh giá giữa hai phạm vi và hai phạm vi đó có kích thước khác nhau (như khi chúng được trả về từ truy vấn) và không thể thay đổi để khớp với cùng kích thước và bạn vừa gặp lỗi
=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
1

để đơn giản, giả sử phạm vi của bạn cho bộ lọc là A1. A10 và B1. B8, bạn có thể sử dụng dấu ngoặc mảng

=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
2 để nối hai hàng ảo trên phạm vi
=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
3 để khớp với kích thước
=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
0 bằng cách sử dụng
=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
1 trong đó số lần lặp lại cần thiết sẽ được tính toán bằng một phép tính đơn giản giữa các phạm vi ban đầu

sau đó với công thức

=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
1 này, chúng ta cần thêm +1 dưới dạng hiệu chỉnh/không an toàn (trong trường hợp chênh lệch giữa hai phạm vi ban đầu là 1), vì
=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
1 hoạt động với tối thiểu 2 lần lặp lại. vì vậy, theo một nghĩa nào đó, chúng tôi sẽ cần tạo một phạm vi
=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
4 (từ
=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
3) và sau đó, chúng tôi sẽ chỉ cắt bỏ hàng cuối cùng từ một phạm vi để nó sẽ là
=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
6 so với
=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
0. chúng tôi sẽ sử dụng 2 ký hiệu duy nhất cho
=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
1

bước tiếp theo sẽ là bọc

=sumifs(H1:H6, I1:I6, "TextA", J1:J6, "TextB")
1 thành
=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
0 và chia cho ký hiệu duy nhất thứ 2. sau đó, (dựa trên nhu cầu khác)
=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
0 này cần phải được bọc vào
=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
2 (vì chúng tôi muốn khớp kích thước cột với kích thước cột) và bước cuối cùng sẽ là bọc nó vào
=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
3 và
=FILTER(A1:A, MATCH(A1:A, B1:B, 0))
=FILTER(A1:A, COUNTIF(B1:B, A1:A))
=FILTER(A1:A, ISNA(MATCH(A1:A, B1:B, 0)))
=FILTER(A1:A, NOT(COUNTIF(B1:B, A1:A)))
4 để xuất ra một lần nữa bằng phép toán đơn giản của . đặt lại với nhau nó sẽ trông như thế này

Bạn có thể lọc theo nhiều điều kiện trong Google Trang tính không?

Sử dụng hàm FILTER với nhiều điều kiện, tất cả đều cần thỏa mãn. Như đã nêu trong phần trước, bạn có thể thêm nhiều điều kiện để hàm FILTER tuân theo . Các điều kiện bổ sung phải được phân tách bằng dấu phẩy.

Có bộ lọc nâng cao nào trong Google Trang tính không?

Bạn cũng có thể thiết lập các bộ lọc nâng cao để lọc dữ liệu theo các điều kiện cụ thể . Ví dụ: bạn có thể lọc dữ liệu để chỉ những giá trị lớn hơn một lượng nhất định mới xuất hiện. Nhấp vào mũi tên bộ lọc cho một cột. Nhấp vào Lọc theo điều kiện.