首页 > 解决方案 > 为同一行替换不同的值并在 SUBSTITUTE 函数之后保持在一起

问题描述

A栏

2020
2021
2022
2023
2024

B栏

wilson/@@@@/
jonas/@@@@/

C栏

=IFERROR(UNIQUE(QUERY(ARRAYFORMULA({
SUBSTITUTE(B1:B,"/@@@@/",A1);
SUBSTITUTE(B1:B,"/@@@@/",A2);
SUBSTITUTE(B1:B,"/@@@@/",A3);
SUBSTITUTE(B1:B,"/@@@@/",A4);
SUBSTITUTE(B1:B,"/@@@@/",A5)
}),"Where Col1 <>''")),"/teste/clean/save/")

结果栏 C

wilson/2020/
jonas/2020/
wilson/2021/
jonas/2021/
wilson/2022/
jonas/2022/
wilson/2023/
jonas/2023/
wilson/2024/
jonas/2024/

预期结果 C 栏

wilson/2020/
wilson/2021/
wilson/2022/
wilson/2023/
wilson/2024/
jonas/2020/
jonas/2021/
jonas/2022/
jonas/2023/
jonas/2024/

注意:我不能在 中使用Order by Col1QUERY因为这些值不会按字母顺序排序,它们需要在SUBSTITUTE.

标签: google-sheetsgoogle-sheets-formula

解决方案


尝试:

=FLATTEN(ARRAYFORMULA(SUBSTITUTE(B1:B2, "@@@@", TRANSPOSE(A1:A5))))

在此处输入图像描述


推荐阅读