Мне нужна формула в 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)))),"."," "))
microsoft-excel
microsoft-office
user201373
источник
источник
Ответы:
Предполагая, что ваш адрес электронной почты
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
вместо этого ..)Вот альтернативный подход
=UPPER(TRIM(LEFT(RIGHT(SUBSTITUTE(SUBSTITUTE(A1,"@","."),".",REPT(" ",100)),200),100)))
источник