Нужна формула из Excel, чтобы получить текст (название организации) из идентификатора электронной почты

2

Мне нужна формула в Excel с условием if.

если почтовый идентификатор abcd@xyz.com, то результат должен быть XYZ, если почтовый идентификатор abcd @ .in.xyz.com, то результат должен быть XYZ.

результат должен быть XYZ, если есть какой-либо из вышеуказанных почтовых идентификаторов.

для первого я получил формулу, как будто почтовый идентификатор находится в C2, то формула как

UPPER(SUBSTITUTE(LEFT(MID(C2,FIND("@",C2)+1,LEN(C2)),FIND(".",MID(C2,FIND("@",C2)+2,LEN(C2)))),"."," "))
user201373
источник
это должно быть в одной формуле или вы можете использовать вспомогательные столбцы?
Питер Альберт
нужно в одной формуле с использованием if
user201373

Ответы:

4

Предполагая, что ваш адрес электронной почты A1- используйте этого монстра:

=UPPER(MID(A1,IFERROR(FIND("#",SUBSTITUTE(A1,".","#",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))-1)),FIND("@",A1))+1,FIND("#",SUBSTITUTE(A1,".","#",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))-IFERROR(FIND("#",SUBSTITUTE(A1,".","#",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))-1)),FIND("@",A1))-1))

Пример файла: https://www.dropbox.com/s/23p3a7hf9pbodiw/OrgEmail.xlsx

Питер Л.
источник
Извините, этого нет IF- я использовал IFERRORвместо этого ..)
Питер Л.
Если после применения этой формулы сообщение отправлено по адресу abcd@xyz.com, я получаю результат как ABCD @ XYZ, а для abcd@in.xyz.com его результат будет корректным как XYZ.
user201373
@ user201373 ты проверил образец? это электронная почта работает хорошо.
Питер Л.
Результат не пришел должным образом, его результаты только 50% показывает.
user201373
@ user201373 не могли бы вы предоставить образцы, которые не работают? 2-3 будет достаточно.
Питер Л.
1

Вот альтернативный подход

=UPPER(TRIM(LEFT(RIGHT(SUBSTITUTE(SUBSTITUTE(A1,"@","."),".",REPT(" ",100)),200),100)))

Барри Гудини
источник