Google 来自多个动态下拉列表的工作表匹配/查询
Google Sheets Match / Query from Multiple Dynamic Dropdowns
我有一个 Sheet,我需要从另一个选项卡查询数据以匹配 4 个 if/or 动态下拉菜单和 1 个 if/and 动态下拉菜单。这对我来说是个难题。我附上了 sheet 以及一个 4 分钟的解释视频。提前致谢!
Sheet:
https://docs.google.com/spreadsheets/d/1rUtTJkvFKFI8Q6lnRtxNpky5bYe9u8BZBok0M8hwZ7o/edit?usp=sharing
视频:
尝试:
=ARRAY_CONSTRAIN(QUERY({'Sub List'!A2:AE,
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!L2:U),,999^99)),
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!V2:AE),,999^99))},
"where "&TEXTJOIN(" and ", 1,
IF(B1="",,"Col32 contains '"&B1&"'"),
IF(B2="",,"Col32 contains '"&B2&"'"),
IF(B3="",,"Col32 contains '"&B3&"'"),
IF(B4="",,"Col32 contains '"&B4&"'"),
IF(B6="",,"Col33 contains '"&B6&"'"))&""), 999^99, 31)
对于OR
逻辑使用:
=ARRAY_CONSTRAIN(QUERY({'Sub List'!A2:AE,
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!L2:U),,999^99)),
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!V2:AE),,999^99))},
"where "&TEXTJOIN(" or ", 1,
IF(B1="",,"Col32 contains '"&B1&"'"),
IF(B2="",,"Col32 contains '"&B2&"'"),
IF(B3="",,"Col32 contains '"&B3&"'"),
IF(B4="",,"Col32 contains '"&B4&"'"),
IF(B6="",,"Col33 contains '"&B6&"'"))&""), 999^99, 31)
对于组合(OR
黄色单元格和 AND
绿色单元格)
=ARRAY_CONSTRAIN(QUERY({'Sub List'!A2:AE,
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!L2:U),,999^99)),
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!V2:AE),,999^99))},
"where ("&TEXTJOIN(" or ", 1,
IF(B1="",,"Col32 contains '"&B1&"'"),
IF(B2="",,"Col32 contains '"&B2&"'"),
IF(B3="",,"Col32 contains '"&B3&"'"),
IF(B4="",,"Col32 contains '"&B4&"'"))&")"&
IF(B6="",," and Col33 contains '"&B6&"'"), 0), 999^99, 31)
我有一个 Sheet,我需要从另一个选项卡查询数据以匹配 4 个 if/or 动态下拉菜单和 1 个 if/and 动态下拉菜单。这对我来说是个难题。我附上了 sheet 以及一个 4 分钟的解释视频。提前致谢!
Sheet:
https://docs.google.com/spreadsheets/d/1rUtTJkvFKFI8Q6lnRtxNpky5bYe9u8BZBok0M8hwZ7o/edit?usp=sharing
视频:
尝试:
=ARRAY_CONSTRAIN(QUERY({'Sub List'!A2:AE,
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!L2:U),,999^99)),
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!V2:AE),,999^99))},
"where "&TEXTJOIN(" and ", 1,
IF(B1="",,"Col32 contains '"&B1&"'"),
IF(B2="",,"Col32 contains '"&B2&"'"),
IF(B3="",,"Col32 contains '"&B3&"'"),
IF(B4="",,"Col32 contains '"&B4&"'"),
IF(B6="",,"Col33 contains '"&B6&"'"))&""), 999^99, 31)
对于OR
逻辑使用:
=ARRAY_CONSTRAIN(QUERY({'Sub List'!A2:AE,
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!L2:U),,999^99)),
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!V2:AE),,999^99))},
"where "&TEXTJOIN(" or ", 1,
IF(B1="",,"Col32 contains '"&B1&"'"),
IF(B2="",,"Col32 contains '"&B2&"'"),
IF(B3="",,"Col32 contains '"&B3&"'"),
IF(B4="",,"Col32 contains '"&B4&"'"),
IF(B6="",,"Col33 contains '"&B6&"'"))&""), 999^99, 31)
对于组合(OR
黄色单元格和 AND
绿色单元格)
=ARRAY_CONSTRAIN(QUERY({'Sub List'!A2:AE,
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!L2:U),,999^99)),
TRANSPOSE(QUERY(TRANSPOSE('Sub List'!V2:AE),,999^99))},
"where ("&TEXTJOIN(" or ", 1,
IF(B1="",,"Col32 contains '"&B1&"'"),
IF(B2="",,"Col32 contains '"&B2&"'"),
IF(B3="",,"Col32 contains '"&B3&"'"),
IF(B4="",,"Col32 contains '"&B4&"'"))&")"&
IF(B6="",," and Col33 contains '"&B6&"'"), 0), 999^99, 31)