根据 Google 个工作表中的选项列表替换单元格的内容
Replace Content of a cell based on a list of options in Google Sheets
多年来,我一直在使用一个很长的公式来帮助我实现我在这里要问的问题。
基本上,每个月我都会下载我的信用卡对帐单,并使用一堆公式以更好的方式对其进行汇总,然后导入我的会计软件。我的公式所做的是它读取每一行中的描述,并根据该行的内容重写该描述。
例如:在我的信用卡中可能会显示 "Starbucks Main St.",因此它会在列表中查找该信息,如果找到 "Starbucks",它将重写(在公式所在的单元格中位于)到 "Coffee"。
所以,我所拥有的是:
Column B > Original Description from Credit Card Statement
Column F > Keyword to be found
Column G > New description
问题是我使用的 IF Search 公式必须与该列表的大小一样长。行得通,但我想知道是否不能简化它。另一个 "issue" 是我不能使用数组公式,所以将公式放在电子表格的顶部,它会扩展到整个语句。
举个例子:
https://docs.google.com/spreadsheets/d/14255Sz28ItSMZ32EebIFiAHQFxtyCJakN5q3gYUB-N0/edit#gid=0
有什么想法吗?
尝试:
=ARRAYFORMULA(PROPER(IFNA(VLOOKUP(REGEXEXTRACT(PROPER(B2:B);
SORT(TEXTJOIN("|"; 1; PROPER(G2:G)); 1; 0)); G2:H; 2; 0); B2:B)))
多年来,我一直在使用一个很长的公式来帮助我实现我在这里要问的问题。
基本上,每个月我都会下载我的信用卡对帐单,并使用一堆公式以更好的方式对其进行汇总,然后导入我的会计软件。我的公式所做的是它读取每一行中的描述,并根据该行的内容重写该描述。
例如:在我的信用卡中可能会显示 "Starbucks Main St.",因此它会在列表中查找该信息,如果找到 "Starbucks",它将重写(在公式所在的单元格中位于)到 "Coffee"。 所以,我所拥有的是:
Column B > Original Description from Credit Card Statement
Column F > Keyword to be found
Column G > New description
问题是我使用的 IF Search 公式必须与该列表的大小一样长。行得通,但我想知道是否不能简化它。另一个 "issue" 是我不能使用数组公式,所以将公式放在电子表格的顶部,它会扩展到整个语句。
举个例子: https://docs.google.com/spreadsheets/d/14255Sz28ItSMZ32EebIFiAHQFxtyCJakN5q3gYUB-N0/edit#gid=0
有什么想法吗?
尝试:
=ARRAYFORMULA(PROPER(IFNA(VLOOKUP(REGEXEXTRACT(PROPER(B2:B);
SORT(TEXTJOIN("|"; 1; PROPER(G2:G)); 1; 0)); G2:H; 2; 0); B2:B)))