Получение электронной почты в excel

Извлечение электронной почты из Excel — это приложение, предназначенное для быстрого извлечения адресов электронной почты из файлов Excel. Вы можете загружать один или несколько файлов одновременно.
Когда вам может понадобиться инструмент для извлечения адресов электронной почты из Excel? Возможно, у вас есть таблица клиентов или деловых партнеров и вам будет удобно, загрузив ее в наше приложение, быстро получить список их адресов электронной почты. И тогда вы можете отправить своим клиентам, например, коммерческие предложения, акции, которые у вас есть в данный момент, или просто поздравить своих деловых партнеров с праздником. Или, возможно, вы бухгалтер, который ведет табличный список клиентов и вам нужно отправить им счета, наше приложение также поможет вам извлечь список их адресов электронной почты без дубликатов. Либо вы менеджер по персоналу и у вас есть таблица со списком людей, которые ранее претендовали на определенную должность в вашей компании, либо просто кандидаты, которым может быть интересна эта вакансия, и сейчас эта вакансия открыта для найма и вы хотите отправьте им электронные письма с просьбой прислать актуальное резюме и уточнить, ищут ли они в настоящее время работу. Многие люди хранят данные в формате Excel, потому что очень удобно работать с данными в табличном виде, поэтому наше приложение будет полезно для быстрого извлечения списка адресов электронной почты для многих людей.
Как работает наше приложение ? Вы загружаете свою таблицу Excel, затем для работы с таблицами Excel мы используем библиотеку Aspose.Cells, которая помогает работать с файлами Excel. С помощью этой библиотеки программа проходит по всем ячейкам таблицы и в тех ячейках, которые содержат данные, программа преобразует их в строки, которые затем сохраняются в результирующий текст или, проще говоря, в строковое значение. Затем, используя регулярное выражение, которое является очень мощным и быстрым способом обработки строк, мы получаем адреса электронной почты из текста. Регулярное выражение сопоставляет шаблон адреса электронной почты с полученным текстом, анализирует, содержит ли он текст, соответствующий шаблону, и выбирает все экземпляры, соответствующие ему. Регулярные выражения позволяют быстро и эффективно работать с большими объемами текста. Пользователь получит результат в виде списка адресов электронной почты для каждого файла без дубликатов. Вы можете сразу скачать получившийся список, который откроется в новой странице браузера, или отправить себе на почту ссылку, перейдя по которой, вы сможете просмотреть получившийся список позже. Результат предоставляется в виде списка адресов для каждого файла, который вы загрузили. В дальнейшем планируется доработать представление результатов обработки загружаемых файлов. Возможно будет удобнее, если результат будет представлен в виде единого списка результатов или результат можно будет скачать в файле формата Word. Мы будем вам благодарны, если вы оставите свой отзыв по этому поводу, какой формат будет для вас более удобным. Нам важно знать ваше мнение о том, какие улучшения мы можем внести в наше приложение.
Наше приложение абсолютно бесплатное и работает одинаково во всех браузерах.

Как быстро извлечь адрес электронной почты из текстовой строки?

Когда вы импортируете некоторые адреса электронной почты из веб-сайта в рабочий лист Excel, они всегда содержат нерелевантный текст, но теперь вы просто хотите извлечь чистые адреса электронной почты из текстовой строки (см. Следующие снимки экрана). Как можно быстро получить адреса электронной почты только из текста ячейки?


стрелка синий правый пузырь Извлечь адрес электронной почты из текстовой строки с помощью формулы

Здесь я представляю вам длинную формулу для извлечения только адресов электронной почты из текста в Excel. Пожалуйста, сделайте следующее:

1. В соседней ячейке B1 введите эту формулу = ОБРЕЗАТЬ (ВПРАВО (ПОДСТАВИТЬ (ЛЕВО (A1, НАЙТИ («», A1 & «», НАЙТИ («@», A1)) — 1), «», ПОВТОР («», LEN (A1))), LEN ( А1))).

doc-extract-emails3

2, Затем нажмите Enter , затем выберите ячейку B1 и перетащите маркер заполнения в диапазон, который вы хотите содержать эту формулу. И адреса электронной почты в диапазоне были извлечены из текстовой строки. Смотрите скриншот:

doc-extract-emails4

Ноты:

1. Знаки препинания после адреса электронной почты также будут извлечены.

2. Если ячейки не содержат адресов электронной почты, в формуле будут отображаться значения ошибок.

3. Если в ячейке несколько адресов электронной почты, формула извлечет только первый адрес.



стрелка синий правый пузырь Извлечь адрес электронной почты из текстовой строки с помощью функции, определяемой пользователем

За исключением приведенной выше формулы, функция, определяемая пользователем, также может помочь вам получить адрес электронной почты из текстовой строки.

1. Удерживайте ALT + F11 ключи, и он открывает Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > Модулии вставьте следующий макрос в окно модуля.

Function ExtractEmailFun(extractStr As String) As String
'Update by extendoffice
Dim CharList As String
On Error Resume Next
CheckStr = "[A-Za-z0-9._-]"
OutStr = ""
Index = 1
Do While True
    Index1 = VBA.InStr(Index, extractStr, "@")
    getStr = ""
    If Index1 > 0 Then
        For p = Index1 - 1 To 1 Step -1
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = Mid(extractStr, p, 1) & getStr
            Else
                Exit For
            End If
        Next
        getStr = getStr & "@"
        For p = Index1 + 1 To Len(extractStr)
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = getStr & Mid(extractStr, p, 1)
            Else
                Exit For
            End If
        Next
        Index = Index1 + 1
        If OutStr = "" Then
            OutStr = getStr
        Else
            OutStr = OutStr & Chr(10) & getStr
        End If
    Else
        Exit Do
    End If
Loop
ExtractEmailFun = OutStr
End Function

3. Затем сохраните код и введите формулу = ExtractEmailFun (A1) в соседней пустой ячейке, см. снимок экрана:

doc-extract-emails5

4, Затем нажмите Enter , выберите ячейку B1 и перетащите маркер заполнения в диапазон, в котором вам нужна формула. И все адреса электронной почты были извлечены из текста ячейки. Смотрите скриншот:

doc-extract-emails6

Ноты:

1. Если в ячейках нет адресов электронной почты, будут показаны пустые ячейки.

2. Если в ячейке несколько адресов электронной почты, все электронные письма будут извлечены.


стрелка синий правый пузырь Извлечь адрес электронной почты из текстовой строки с кодом VBA

Если вы считаете, что приведенные выше формулы вызывают у вас проблемы, следующий код VBA может помочь вам извлечь адреса электронной почты за один раз.

1. Удерживайте ALT + F11 ключи, и он открывает Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > Модули, и вставьте следующий макрос в Окно модуля.

VBA: извлечь адреса электронной почты из текстовой строки

Sub ExtractEmail()
'Update 20130829
Dim WorkRng As Range
Dim arr As Variant
Dim CharList As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
arr = WorkRng.Value
CheckStr = "[A-Za-z0-9._-]"
For i = 1 To UBound(arr, 1)
    For j = 1 To UBound(arr, 2)
        extractStr = arr(i, j)
        outStr = ""
        Index = 1
        Do While True
            Index1 = VBA.InStr(Index, extractStr, "@")
            getStr = ""
            If Index1 > 0 Then
                For p = Index1 - 1 To 1 Step -1
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = Mid(extractStr, p, 1) & getStr
                    Else
                        Exit For
                    End If
                Next
                getStr = getStr & "@"
                For p = Index1 + 1 To Len(extractStr)
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = getStr & Mid(extractStr, p, 1)
                    Else
                        Exit For
                    End If
                Next
                Index = Index1 + 1
                If outStr = "" Then
                    outStr = getStr
                Else
                    outStr = outStr & Chr(10) & getStr
                End If
            Else
                Exit Do
            End If
        Loop
        arr(i, j) = outStr
    Next
Next
WorkRng.Value = arr
End Sub

3. Затем нажмите F5 ключ для запуска этого кода, и вы должны выбрать диапазон, который вы хотите использовать VBA в появившемся диалоговом окне, см. снимок экрана:

doc-extract-emails7

4. Затем нажмите OK, а адреса электронной почты были извлечены из выбранных текстовых строк. Смотрите скриншоты:

Ноты:

1. Если в ячейках нет адресов электронной почты, отобразятся пустые ячейки.

2. Все электронные письма будут извлечены, если в ячейке более одного адреса электронной почты.

3. Извлеченные электронные письма будут охватывать исходные данные, поэтому при необходимости лучше сначала сделать резервную копию данных.


стрелка синий правый пузырь Извлечь адрес электронной почты из текстовой строки с помощью Kutools for Excel одним кликом

Вышеупомянутые методы выглядят несколько сложными для нашего новичка в Excel, здесь я могу порекомендовать вам быстрый и простой инструмент — Kutools for Excel, С его Извлечь адрес электронной почты Утилита, вы можете без особых усилий извлечь адреса электронной почты из текстовых строк.

Если вы установили Kutools for Excel, пожалуйста, сделайте следующее:

1. Выделите ячейки, содержащие текстовые строки.

2. Нажмите Кутулс > Текст > Извлечь адрес электронной почты, см. снимок экрана:

3, И Извлечь адрес электронной почты появится диалоговое окно, выберите ячейку, в которую вы хотите поместить результат, см. снимок экрана:

doc-extract-emails9

4. Затем нажмите OK , все адреса электронной почты были извлечены из текстовых строк, см. снимок экрана:

doc-extract-emails9

Нажмите, чтобы загрузить и бесплатную пробную версию Kutools for Excel от Yhao сейчас!


стрелка синий правый пузырь Демонстрация: извлечение адреса электронной почты из текстовой строки с помощью Kutools for Excel


Связанная статья:

Как извлечь домены из нескольких адресов электронной почты в Excel?


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Когда вы импортируете некоторые адреса электронной почты из веб-сайта в рабочий лист Excel, они всегда содержат нерелевантный текст, но теперь вы просто хотите извлечь чистые адреса электронной почты из текстовой строки (см. следующие снимки экрана). Как можно быстро получить адреса электронной почты только из текста ячейки?

Извлечь адрес электронной почты из текстовой строки с помощью формулы

Извлечь адрес электронной почты из текстовой строки с помощью функции, определяемой пользователем

Извлечь адрес электронной почты из текстовой строки с помощью VBA код

Извлечь адрес электронной почты из текстовой строки с помощью Kutools for Excel


Содержание

  1. Извлечь письмо адрес из текстовой строки с формулой
  2. Извлечь письмо адрес из текстовой строки с помощью функции, определяемой пользователем
  3. Извлечь адрес электронной почты из текстовой строки с кодом VBA
  4. Извлечь адрес электронной почты из текстовой строки с помощью Kutools for Excel одним щелчком мыши
  5. Демо: извлечение адреса электронной почты из текстовая строка с помощью Kutools for Excel

Извлечь письмо адрес из текстовой строки с формулой

Здесь я представляю вам длинную формулу для извлечения только адресов электронной почты из текста в Excel. Пожалуйста, сделайте следующее:

1 . В соседней ячейке B1 введите эту формулу = TRIM (RIGHT (SUBSTITUTE (LEFT (A1, FIND (“”, A1 & “”, FIND (“@”, A1)) – 1), “”, REPT (“”, LEN (A1))), LEN (A1))) .

2 . Затем нажмите клавишу Enter , затем выберите ячейку B1 и перетащите маркер заполнения в диапазон, который вы хотите содержать эту формулу. И адреса электронной почты в диапазоне были извлечены из текстовой строки. См. Снимок экрана:

Примечания:

1. Знаки препинания после адреса электронной почты также будут извлечены.

2. Если в ячейках нет адресов электронной почты, в формуле будут отображаться значения ошибок.

3. Если в ячейке несколько адресов электронной почты, формула будет извлекать только первый адрес.


Извлечь несколько адресов электронной почты из текстовых строк.

Kutools for Excel ‘s Извлечь адрес электронной почты может помочь вам быстро и удобно извлекать адреса электронной почты из текстовых строк. Нажмите, чтобы загрузить Kutools for Excel!

: с более чем 300 удобными надстройками Excel, попробуйте бесплатно без ограничений через 30 дней. Загрузите и бесплатную пробную версию прямо сейчас!


Извлечь письмо адрес из текстовой строки с помощью функции, определяемой пользователем

За исключением приведенной выше формулы, функция, определяемая пользователем, также может помочь вам получить адрес электронной почты из текстовой строки.

1 . Удерживая нажатыми клавиши ALT + F11 , откроется окно Microsoft Visual Basic для приложений .

2 . Нажмите Вставить > Module и вставьте следующий макрос в окно модуля.

3 . Затем сохраните код и введите формулу = ExtractEmailFun (A1) в соседнюю пустую ячейку, см. Снимок экрана:

4 . Затем нажмите клавишу Enter , выберите ячейку B1 и перетащите маркер заполнения в диапазон, в котором вам нужна формула. И все адреса электронной почты были извлечены из текста ячейки. См. Снимок экрана:

Примечания:

1. Если в ячейках нет адресов электронной почты, будут отображаться пустые ячейки.

2. Если в ячейке несколько адресов электронной почты, все электронные письма будут извлечены.


Извлечь адрес электронной почты из текстовой строки с кодом VBA

Если вы чувствуете, что приведенные выше формулы доставляют вам неудобства, следующий код VBA может помочь вам извлечь адреса электронной почты в один.

1 . Удерживая нажатыми клавиши ALT + F11 , откроется окно Microsoft Visual Basic для приложений .

2 . Нажмите Вставить > Module и вставьте следующий макрос в окно модуля .

VBA: извлекать адреса электронной почты из текстовой строки

3 . Затем нажмите клавишу F5 , чтобы запустить этот код, и вы должны выбрать диапазон, который вы хотите использовать VBA в появившемся диалоговом окне, см. Снимок экрана:

4 . Затем нажмите OK , и адреса электронной почты будут извлечены из выбранных текстовых строк. См. Скриншоты:

1 . Если в ячейках нет адресов электронной почты, будут отображаться пустые ячейки.

2. Все электронные письма будут извлечены, если в ячейке более одного адреса электронной почты.

3. Извлеченные электронные письма будут охватывать исходные данные, поэтому при необходимости лучше сначала сделать резервную копию данных.


Извлечь адрес электронной почты из текстовой строки с помощью Kutools for Excel одним щелчком мыши

Вышеупомянутые методы выглядят несколько сложными для нашего новичка в Excel, здесь я могу порекомендовать это быстрый и простой инструмент – Kutools for Excel , с его утилитой Извлечь адрес электронной почты , вы можете без особых усилий извлекать адреса электронной почты из текстовых строк.

Kutools for Excel : с более чем 300 удобными надстройками Excel ins, попробуйте бесплатно без ограничений в течение 30 дней .

Перейти к загрузке
Бесплатная пробная версия 30 daysPurchase
PayPal/MyCommerce

Если вы установили Kutools for Excel , сделайте следующее:

1 . Выберите ячейки, содержащие текстовые строки.

2 . Нажмите Kutools > Text > Извлечь адрес электронной почты . , см. снимок экрана:

3 . Появится диалоговое окно Извлечь адрес электронной почты , выберите ячейку, в которую вы хотите поместить результат, см. Снимок экрана:

. Затем нажмите кнопку OK , все адреса электронной почты были извлечены из текстовых строк, см. Снимок экрана:

Нажмите, чтобы загрузить и бесплатную пробную версию Kutools for Excel прямо сейчас!


Демо: извлечение адреса электронной почты из текстовая строка с помощью Kutools for Excel

Kutools for Excel : с более чем 300 удобные надстройки Excel, которые можно попробовать бесплатно без ограничений в течение 30 дней. Загрузить и бесплатную пробную версию прямо сейчас!


Как извлечь домены из нескольких адресов электронной почты в Excel?


Данный макрос предназначен для поиска адресов электронной почты на листе Excel, с последующим выводом найденных адресов на отдельный лист.

В прикреплённом файле, на первом листе («исходные данные»), ячейки заполнены неструктурированной информацией (смесь фамилий, адресов почты, прочей ненужной информации)

Макрос вычленяет из текста ячеек адреса электронной почты, и выводит все найденные адреса email в таблицу на втором листе («результат»)

Конечно, не помешало бы ещё проверить все найденные адреса почты на корректность (на соответствие стандартам RFC 5322 и RFC 5321), но в данном макросе это не реализовано (но обычно это и не требуется)

Для поиска адресов email используются регулярные выражения (RegExp)

Также рекомендуем обратить внимание на настройку для программы Парсер сайтов Сбор email на интернет-сайтах. Настройка позволяет проходить по списку сайтов и искать е-мейл на основной странице и странице контактов.

Есть в наличии также другая версия этого макроса, который выводит найденные адреса email в те же строки листа, где они были найдены:

Если вам нужна именно такая версия макроса, оплачивайте 450 руб, и напишите на почту order@excelvba.ru письмо с темой «Покупка макрос поиска email» с указанием, когда и куда оплатили.
После получения оплаты, я вышлю вам на почту файл с макросом.

Dim coll As Collection
 
Sub EmailsList()
    Dim cell As Range: Application.ScreenUpdating = False
    Set coll = New Collection
    ' перебираем все заполненные ячейки на листе в поисках адресов почты
    For Each cell In shs.UsedRange.SpecialCells(xlCellTypeConstants).Cells
        ParseAddresses cell.Text    ' проверяем очередную ячейку
    Next cell
 
    ' выводим найденные номера на второй лист
    For Each Item In coll
        shres.Range("a" & shres.Rows.Count).End(xlUp).Offset(1) = Item
    Next
End Sub
 
Sub cl(): shres.[a4:a65000].ClearContents: End Sub    ' очистка таблицы

Sub ParseAddresses(ByVal txt As String)
    ' ищет в тексте txt адреса электронной почты,
    ' все найденные адреса добавляются в коллекцию coll
    repl1$ = "ZZZXXXZZZ": repl2$ = "ZZZYYYZZZ": On Error Resume Next
    txt = Replace(txt, ".", repl1$): txt = Replace(txt, "-", repl2$)
    Set RegExp = CreateObject("VBScript.RegExp"): RegExp.Global = True
    RegExp.Pattern = "[w]{1,}@[w]{1,}" & repl1$ & "[w]{1,}"
    If RegExp.test(txt) Then
        Set objMatches = RegExp.Execute(txt)
        For i = 0 To objMatches.Count - 1
            addr = objMatches.Item(i).Value
            addr = Replace(addr, repl1$, "."): addr = Replace(addr, repl2$, "-")
            coll.Add addr, addr    ' только уникальные адреса
        Next
    End If
End Sub
  • 66083 просмотра

Не получается применить макрос? Не удаётся изменить код под свои нужды?

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

Это глава из книги Билла Джелена Гуру Excel расширяют горизонты: делайте невозможное с Microsoft Excel.

Задача: у вас есть ячейки, содержащие адреса электронной почты, а также другой текст. Вам нужно извлечь адреса электронной почты.

Решение: проблему можно решить с помощью макроса, пользовательской функции или мегаформулы.

Макрос

В основе макроса лежит функция VBA Split. Допустим, что ячейка содержит текст Write to lora@mrexcel.com to book a seminar. Если передать этот текст в функцию Split и указать, что текст следует разбить на элементы, разделенные пробелом – x = Split(cell.Value, " ") – VBA вернет массив, где каждое слово будет элементом массива. На рис. 1 показан массив x после использования функция Split.

Рис. 1. Функция Split возвращает массив, где каждое слово будет элементом массива

Рис. 1. Функция Split возвращает массив, где каждое слово будет элементом массива

Скачать заметку в формате Word или pdf, примеры в формате Excel (с кодом VBA)

После этого макрос перебирает все элементы массива х, пока не найдет слово, соответствующее шаблону *@*.* – If x(i) Like "*@*.*" Then. Когда соответствие найдено, макрос записывает адрес электронной почты справа от исходной ячейки – cell.Offset(0, 1) = x(i). Для начала выделите все ячейки, содержащие текст (в том числе и адреса электронной почты), а затем запустите макрос:

Sub getEmailMacro()
        Dim x As Variant
        Dim i As Integer
        Dim note As String

        For Each cell In Selection
                x = Split(cell.Value, " ")
                For i = 0 To UBound(x)
                        If x(i) Like "*@*.*" Then
                                cell.Offset(0, 1) = x(i)
                                Exit For
                        End If
                Next i
        Next cell
End Sub

Адреса электронной почты записываются справа от исходного (выбранного) значения (рис. 2).

Рис. 2. Извлечение адресов электронной почты макросом

Рис. 2. Извлечение адресов электронной почты макросом

Пользовательская функция

Вы сможете адаптировать приведенный выше макрос в функцию, определяемую пользователем. Аргумент этой функции – текст, содержащий адрес электронной почты. Возвращаемое значение – сам адрес электронной почты (рис. 3).

Рис. 3. Пользовательская функция, извлекающая адрес электронной почты

Рис. 3. Пользовательская функция, извлекающая адрес электронной почты

Код пользовательской функции:

Public Function getEmail(note As String) As String
Dim x As Variant
Dim i As Integer
x = Split(note, " ")
For i = 0 To UBound(x)
        If x(i) Like "*@*.*" Then
                getEmail = x(i)
                Exit Function
        End If
Next i
End Function

Мегаформула

Несмотря на то, что следующая формула потребует некоторого времени на написание, она крайне умна и удивительно проста в эксплуатации: =СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(" "&A1;" ";ПОВТОР(" ";20));НАЙТИ("@";ПОДСТАВИТЬ(" "&A1;" ";ПОВТОР(" ";20)))-20;40)). Сначала

Формула изначально использует функцию ПОДСТАВИТЬ, чтобы в исходном тексте заменить каждый пробел на двадцать пробелов подряд. Это позволяет отделить каждое слово в тексте большим числом пробелов.

Первоначальный текст: now is the time for bill@mrexcel.com to buy a book

Новый текст:                    now                    is                    the                    time                    for                    bill@mrexcel.com                    to                    buy                    a                    book

Функция НАЙТИ находит знак @ в новом тексте. Функции ПСТР извлекает фрагмент текста, начинающийся за 20 символов перед @ и включающий 40 символов. Я использовал эти параметры (20 и 40), так как считаю, что их достаточно, чтобы обработать любой возможный адрес электронной почты. Да, это может привести к ошибке, если в вашей базе есть адрес типа john.jacob.jingleheimer.schmidt@gmail.com. Однако, для адресов нормального размера в итоге вы получите что-то вроде:

                                      bill@mrexcel.com

Наконец, функция СЖПРОБЕЛЫ заменяет несколько пробелов подряд на один, а также удаляет начальные и конечные пробелы, так что в конечном итоге вы получите то, что хотели: bill@mrexcel.com (рис. 4).

Рис. 4. Мегаформула извлекает адрес электронной почты

Рис. 4. Мегаформула извлекает адрес электронной почты

Резюме: извлечение адреса электронной почты из ячейки, содержащей другой текст, можно выполнить с помощью макроса, пользовательской функции или мегаформулы.

Источник.

Понравилась статья? Поделить с друзьями:
  • Полоса форматирования в word
  • Получение цифрового удостоверения word
  • Полоса прокрутки на весь лист в excel
  • Получение целого числа в excel
  • Полоса прокрутки в ячейке excel