我想从我的Google工作表发送电子邮件。我希望电子邮件以收件人的名字或收件人的名字为收件人。以下是我在A列中的数据的示例。
我需要在B列中使用一个公式来提取A列中的名字,但是如果以不同的名称来知道它们,那么该名称应该放在A列的方括号中,那么我希望将该名称提取到B列中。我有以下适用于方括号中的名称的公式,但是在没有方括号的情况下,我需要有关公式的帮助以提取名字。
=(SPLIT(REGEXEXTRACT(A2,"\((.*)\)"),","))
答案 0 :(得分:1)
尝试一下。在B2中,输入以下公式:
=iferror(SPLIT(REGEXEXTRACT(A2,"\((.*)\)"),","), mid(A2, find(", ", A2)+2, len(A2)))
说明:
第一部分是您的: SPLIT(REGEXEXTRACT(A2,“((。*))”),“,”)
如您所见,如果找不到“(”,则返回#ERROR。因此,请使用iferror
进行包装。如果出现错误,则返回第二部分:
= mid(A2,find(“,”,A2)+2,len(A2))
mid()
函数从字符串返回一个子字符串。第一个参数是您要查找的字符串,位于A2
中。然后,子字符串的起始位置是“,”的位置(偏移2),并一直持续到字符串的末尾。
答案 1 :(得分:1)
答案 2 :(得分:0)
尝试一下。在B1中,输入以下公式:
={"Salutation";arrayformula(if(A2:A="","",iferror((SPLIT(REGEXEXTRACT(A2:A,"\((.*)\)"),",")),index(split(A2:A," "),,2))))}
说明:
第一部分是您的:SPLIT(REGEXEXTRACT(A2,“((。*))”),“,”)
如您所见,如果找不到“(”,则返回#ERROR。因此请使用iferror进行包装。如果出现错误,则返回第二部分:index(split(A2:A, “”),, 2)
index()函数返回split()的第二列。这样做的好处是您不必向下拖动公式。