从整个电子邮件地址中提取电子邮件域名

时间:2015-03-22 07:10:27

标签: excel-vba excel-formula text-extraction vba excel

我想从整个电子邮件地址中提取域名,如下图所示。

你知道我应该怎么做才能使用VBA吗?

enter image description here

3 个答案:

答案 0 :(得分:2)

您不需要为此使用VBA,但如果您想使用更高级的功能(如正则表达式),则可以使用。您没有提供任何要求,因此我将假设a@b.c的简单情况。如果格式包含子域,例如a@b.c.d,则会返回子域而不是域。

您可以在单元格C4中使用此公式,并根据需要向下拖动。

=LEFT(RIGHT(B4,LEN(B4)-FIND("@",B4)),FIND(".",RIGHT(B4,LEN(B4)-FIND("@",B4)))-1)

如果需要VBA解决方案,您可以在VBA中将其用作单元格公式。

答案 1 :(得分:0)

如果您只想从电子邮件地址获取域名服务器名称,请尝试:

=IF(ISERROR(FIND("@",B4)),"",MID(B4,FIND("@",B4)+1,FIND(".",B4,FIND("@",B4))-FIND("@",B4)-1))

答案 2 :(得分:0)

对于VBA

Name = Mid$(EmailAddress, InStrRev(EmailAddress, "@") + 1, _
                                    InStrRev(EmailAddress, ".") - _
                                    InStrRev(EmailAddress, "@") - 1)