Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
В этой статье описаны синтаксис формулы и использование функции АДРЕС в Microsoft Excel. Чтобы узнать больше о работе с почтовыми адресами и создании почтовых наклеек, см. по ссылкам в разделе См. также.
Описание
Функцию АДРЕС можно использовать для получения адреса ячейки на листе по номерам строки и столбца. Например, функция АДРЕС(2;3) возвращает значение $C$2. Еще один пример: функция АДРЕС(77;300) возвращает значение $KN$77. Чтобы передать функции АДРЕС номера строки и столбца в качестве ее аргументов, можно использовать другие функции (например, функции СТРОКА и СТОЛБЕЦ).
Синтаксис
АДРЕС(номер_строки;номер_столбца;[тип_ссылки];[a1];[имя_листа])
Аргументы функции АДРЕС указаны ниже.
-
Номер_строки Обязательный аргумент. Номер строки, используемый в ссылке на ячейку.
-
Номер_столбца Обязательный аргумент. Номер столбца, используемый в ссылке на ячейку.
-
Тип_ссылки Необязательный аргумент. Задает тип возвращаемой ссылки.
Тип_ссылки |
Возвращаемый тип ссылки |
1 или опущен |
Абсолютный |
2 |
Абсолютная строка; относительный столбец |
3 |
Относительная строка; абсолютный столбец |
4 |
Относительный |
-
A1 Необязательный аргумент. Логическое значение, которое определяет тип ссылок: А1 или R1C1. При использовании ссылок типа А1 столбцы обозначаются буквами, а строки — цифрами. При использовании ссылок типа R1C1 и столбцы, и строки обозначаются цифрами. Если аргумент А1 имеет значение ИСТИНА или опущен, то функция АДРЕС возвращает ссылку типа А1; если этот аргумент имеет значение ЛОЖЬ, функция АДРЕС возвращает ссылку типа R1C1.
Примечание: Чтобы изменить тип ссылок, используемый Microsoft Excel, откройте вкладку Файл, а затем нажмите кнопку Параметры и выберите пункт Формулы. В группе Работа с формулами установите или снимите флажок Стиль ссылок R1C1.
-
Имя_листа Необязательный аргумент. Текстовое значение, определяющее имя листа, которое используется для формирования внешней ссылки. Например, формула =АДРЕС(1;1;;;»Лист2″) возвращает значение Лист2!$A$1. Если аргумент имя_листа отсутствует, имя листа не используется, и адрес, возвращаемый функцией, ссылается на ячейку текущего листа.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Формула |
Описание |
Результат |
=АДРЕС(2;3) |
Абсолютная ссылка |
$C$2 |
=АДРЕС(2;3;2) |
Абсолютная строка; относительный столбец |
C$2 |
=АДРЕС(2;3;2;ЛОЖЬ) |
Абсолютная строка; относительный столбец с типом ссылки R1C1 |
R2C[3] |
=АДРЕС(2;3;1;ЛОЖЬ;»[Книга1]Лист1″) |
Абсолютная ссылка на другую книгу и лист |
‘[Книга1]Лист1’!R2C3 |
=АДРЕС(2;3;1;ЛОЖЬ;»ЛИСТ EXCEL») |
Абсолютная ссылка на другой лист |
‘ЛИСТ EXCEL’!R2C3 |
Нужна дополнительная помощь?
Как быстро извлечь адрес электронной почты из текстовой строки?
Когда вы импортируете некоторые адреса электронной почты из веб-сайта в рабочий лист Excel, они всегда содержат нерелевантный текст, но теперь вы просто хотите извлечь чистые адреса электронной почты из текстовой строки (см. Следующие снимки экрана). Как можно быстро получить адреса электронной почты только из текста ячейки?
Извлечь адрес электронной почты из текстовой строки с помощью формулы
Здесь я представляю вам длинную формулу для извлечения только адресов электронной почты из текста в Excel. Пожалуйста, сделайте следующее:
1. В соседней ячейке B1 введите эту формулу = ОБРЕЗАТЬ (ВПРАВО (ПОДСТАВИТЬ (ЛЕВО (A1, НАЙТИ («», A1 & «», НАЙТИ («@», A1)) — 1), «», ПОВТОР («», LEN (A1))), LEN ( А1))).
2, Затем нажмите Enter , затем выберите ячейку B1 и перетащите маркер заполнения в диапазон, который вы хотите содержать эту формулу. И адреса электронной почты в диапазоне были извлечены из текстовой строки. Смотрите скриншот:
Ноты:
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) в соседней пустой ячейке, см. снимок экрана:
4, Затем нажмите Enter , выберите ячейку B1 и перетащите маркер заполнения в диапазон, в котором вам нужна формула. И все адреса электронной почты были извлечены из текста ячейки. Смотрите скриншот:
Ноты:
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 в появившемся диалоговом окне, см. снимок экрана:
4. Затем нажмите OK, а адреса электронной почты были извлечены из выбранных текстовых строк. Смотрите скриншоты:
Ноты:
1. Если в ячейках нет адресов электронной почты, отобразятся пустые ячейки.
2. Все электронные письма будут извлечены, если в ячейке более одного адреса электронной почты.
3. Извлеченные электронные письма будут охватывать исходные данные, поэтому при необходимости лучше сначала сделать резервную копию данных.
Извлечь адрес электронной почты из текстовой строки с помощью Kutools for Excel одним кликом
Вышеупомянутые методы выглядят несколько сложными для нашего новичка в Excel, здесь я могу порекомендовать вам быстрый и простой инструмент — Kutools for Excel, С его Извлечь адрес электронной почты Утилита, вы можете без особых усилий извлечь адреса электронной почты из текстовых строк.
Если вы установили Kutools for Excel, пожалуйста, сделайте следующее:
1. Выделите ячейки, содержащие текстовые строки.
2. Нажмите Кутулс > Текст > Извлечь адрес электронной почты, см. снимок экрана:
3, И Извлечь адрес электронной почты появится диалоговое окно, выберите ячейку, в которую вы хотите поместить результат, см. снимок экрана:
4. Затем нажмите OK , все адреса электронной почты были извлечены из текстовых строк, см. снимок экрана:
Нажмите, чтобы загрузить и бесплатную пробную версию Kutools for Excel от Yhao сейчас!
Демонстрация: извлечение адреса электронной почты из текстовой строки с помощью Kutools for Excel
Связанная статья:
Как извлечь домены из нескольких адресов электронной почты в Excel?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Когда вы импортируете некоторые адреса электронной почты из веб-сайта в рабочий лист Excel, они всегда содержат нерелевантный текст, но теперь вы просто хотите извлечь чистые адреса электронной почты из текстовой строки (см. следующие снимки экрана). Как можно быстро получить адреса электронной почты только из текста ячейки?
Извлечь адрес электронной почты из текстовой строки с помощью формулы Извлечь адрес электронной почты из текстовой строки с помощью функции, определяемой пользователем Извлечь адрес электронной почты из текстовой строки с помощью VBA код Извлечь адрес электронной почты из текстовой строки с помощью Kutools for Excel |
Содержание
- Извлечь письмо адрес из текстовой строки с формулой
- Извлечь письмо адрес из текстовой строки с помощью функции, определяемой пользователем
- Извлечь адрес электронной почты из текстовой строки с кодом VBA
- Извлечь адрес электронной почты из текстовой строки с помощью Kutools for Excel одним щелчком мыши
- Демо: извлечение адреса электронной почты из текстовая строка с помощью 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 дней . |
Перейти к загрузке |
Если вы установили Kutools for Excel , сделайте следующее:
1 . Выберите ячейки, содержащие текстовые строки.
2 . Нажмите Kutools > Text > Извлечь адрес электронной почты . , см. снимок экрана:
3 . Появится диалоговое окно Извлечь адрес электронной почты , выберите ячейку, в которую вы хотите поместить результат, см. Снимок экрана:
. Затем нажмите кнопку OK , все адреса электронной почты были извлечены из текстовых строк, см. Снимок экрана:
Нажмите, чтобы загрузить и бесплатную пробную версию Kutools for Excel прямо сейчас!
Демо: извлечение адреса электронной почты из текстовая строка с помощью Kutools for Excel
Kutools for Excel : с более чем 300 удобные надстройки Excel, которые можно попробовать бесплатно без ограничений в течение 30 дней. Загрузить и бесплатную пробную версию прямо сейчас!
Как извлечь домены из нескольких адресов электронной почты в Excel?
You can’t send emails directly form Excel, but there are a few ways to trigger the default mail client on your computer. In this guide, we’re going to show you how to send email in Excel.
Download Workbook
Send email with attachment
If you want to send the file you are working on, the simplest method is Excel’s Email command. This command opens a new email including the active file. You can add the command into your Quick Access Toolbar (QAT) by following the steps below.
- Click Customize Quick Access Toolbar button at the end of QAT commands.
- Click Email to insert the command into your QAT.
- The command will show up in the bar.
- Click the Email button to open a new mail. Make sure you have an email client installed, like Outlook.
Hyperlink Formula
Excel’s HYPERLINK formula is another way to send email from an Excel workbook. You can generate a link that can create a new mail with parameters like subject, cc, bcc or the body.
To trigger the email client, you need to add the «mailto:» prefix the email address you want to send.
=HYPERLINK(«mailto:my@email.com»)
Although you can’t automatically attach an Excel file, like you can with the Email command, you can generate the email content dynamically by cell references.
To add other parameters, add a question mark (?) after the email address(es). Each argument should be separated by an ampersand (&) character.
=HYPERLINK(«mailto:clientA@mail.com?cc=sales@mail.com&bcc=vice@mail.com&subject=New Proposal&body=Please review our new proposal in three days»)
Here is a cheat sheet:
cc | Email address that will receive the mail’s carbon copy. |
bcc | Email that will receive the blind carbon copy of the mail. |
; | The delimiter for email addresses in the same argument. |
subject | The subject of the mail. |
body | The content of the mail. |
? | The first delimiter after recipient address. |
& | The delimiter for other parameters. |
You can omit any argument you want to skip. Here is a sample formula with cell references:
=HYPERLINK(«mailto:»&C11&»?cc=»&C12&»&bcc=»&C13&»&subject=»&C14&»&body=»&C15)
Данный макрос предназначен для поиска адресов электронной почты на листе 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
- 66087 просмотров
Не получается применить макрос? Не удаётся изменить код под свои нужды?
Оформите заказ у нас на сайте, не забыв прикрепить примеры файлов, и описать, что и как должно работать.