加入 Google 工作表的条件转置
Conditional Transpose with join in Google Sheets
我想在第一个 sheet(仪表板)中创建一个来自我的第二个 sheet(股票列表)的基于作者的自动书单,如下面的 link:
https://docs.google.com/spreadsheets/d/16OOzurqBchn5sx5BCUzqVDvU9fA524aK9B5lGezjTUE/edit?usp=sharing
-> 如果一位作者有多本书,则用逗号创建一个列列表(示例:Dashboard!B3)。
-> 如果有合著者,book/books 名字也会创建
此致
粘贴到 B2 单元格:
=ARRAYFORMULA(IFERROR(VLOOKUP(A3:A,
{SORT(UNIQUE(TRIM(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(StockList!C2:C, ","))<>"", "♠"&SPLIT(StockList!C2:C, ","), )),"♠"))))),
REGEXREPLACE(TRIM(TRANSPOSE(QUERY(QUERY(QUERY(TRIM(SPLIT(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(StockList!C2:C, ","))<>"",
"♦"&StockList!B2:B&","&"♠"&SPLIT(StockList!C2:C, ","), )), "♦")), "♠")),
"select max(Col1) where Col1 is not null group by Col1 pivot Col2", 0),
"offset 1", 0),, 999^99))), ",$", )}, 2, 0)))
自定义孟加拉语修复:
=ARRAYFORMULA({QUERY(TRANSPOSE(QUERY(TRIM(SPLIT(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(A!C3:C, ","))<>"", "♦"&A!B3:B&"♠"&SPLIT(A!C3:C, ","), )), "♦")), "♠")),
"select max(Col1) where Col1 is not null group by Col1 pivot Col2", 0)), "select Col1", 0),
QUERY(QUERY(TRIM(SPLIT(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(A!C3:C, ","))<>"", "♦"&A!B3:B&"♠"&SPLIT(A!C3:C, ","), )), "♦")), "♠")),
"select count(Col2) where Col2 is not null group by Col2", 0), "offset 1", 0),
REGEXREPLACE(TRIM(TRANSPOSE(QUERY(QUERY(QUERY(TRIM(SPLIT(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(A!C3:C, ","))<>"", "♦"&A!B3:B&",♠"&SPLIT(A!C3:C, ","), )), "♦")), "♠")),
"select max(Col1) where Col1 is not null group by Col1 pivot Col2", 0), "offset 1", 0)
,,999^99))), ",$", )})
我想在第一个 sheet(仪表板)中创建一个来自我的第二个 sheet(股票列表)的基于作者的自动书单,如下面的 link:
https://docs.google.com/spreadsheets/d/16OOzurqBchn5sx5BCUzqVDvU9fA524aK9B5lGezjTUE/edit?usp=sharing
-> 如果一位作者有多本书,则用逗号创建一个列列表(示例:Dashboard!B3)。
-> 如果有合著者,book/books 名字也会创建
此致
粘贴到 B2 单元格:
=ARRAYFORMULA(IFERROR(VLOOKUP(A3:A,
{SORT(UNIQUE(TRIM(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(StockList!C2:C, ","))<>"", "♠"&SPLIT(StockList!C2:C, ","), )),"♠"))))),
REGEXREPLACE(TRIM(TRANSPOSE(QUERY(QUERY(QUERY(TRIM(SPLIT(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(StockList!C2:C, ","))<>"",
"♦"&StockList!B2:B&","&"♠"&SPLIT(StockList!C2:C, ","), )), "♦")), "♠")),
"select max(Col1) where Col1 is not null group by Col1 pivot Col2", 0),
"offset 1", 0),, 999^99))), ",$", )}, 2, 0)))
自定义孟加拉语修复:
=ARRAYFORMULA({QUERY(TRANSPOSE(QUERY(TRIM(SPLIT(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(A!C3:C, ","))<>"", "♦"&A!B3:B&"♠"&SPLIT(A!C3:C, ","), )), "♦")), "♠")),
"select max(Col1) where Col1 is not null group by Col1 pivot Col2", 0)), "select Col1", 0),
QUERY(QUERY(TRIM(SPLIT(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(A!C3:C, ","))<>"", "♦"&A!B3:B&"♠"&SPLIT(A!C3:C, ","), )), "♦")), "♠")),
"select count(Col2) where Col2 is not null group by Col2", 0), "offset 1", 0),
REGEXREPLACE(TRIM(TRANSPOSE(QUERY(QUERY(QUERY(TRIM(SPLIT(TRANSPOSE(SPLIT(CONCATENATE(
IF(IFERROR(SPLIT(A!C3:C, ","))<>"", "♦"&A!B3:B&",♠"&SPLIT(A!C3:C, ","), )), "♦")), "♠")),
"select max(Col1) where Col1 is not null group by Col1 pivot Col2", 0), "offset 1", 0)
,,999^99))), ",$", )})