KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как отсортировать адреса в Excel по названию или номеру улицы?

АвторСунДата изменения

При работе со списком адресов в Excel часто возникает необходимость упорядочить или проанализировать данные, отсортировав их по названию улицы или номеру дома. Например, чтобы сгруппировать клиентов, проживающих на одной улице, или организовать доставку в порядке возрастания номеров домов, такая сортировка просто незаменима. Однако стандартные форматы адресов обычно содержат и название улицы, и номер дома в одной ячейке, из-за чего обычная сортировка не даёт ожидаемого результата. В этой статье мы рассмотрим практические способы сортировки адресов по названию или номеру улицы в Excel, проанализируем их преимущества и сценарии применения, а также предложим решения для устранения типичных проблем и альтернативные подходы, адаптированные под разные потребности пользователей.

Сортировка адресов по названию улицы с использованием вспомогательного столбца в Excel

Сортировка адресов по номеру улицы с использованием вспомогательного столбца в Excel

Сортировка адресов с помощью VBA для автоматического извлечения и сортировки по названию или номеру улицы

Сортировка адресов по названию или номеру улицы с помощью Power Query (без вспомогательных столбцов)


Сортировка адресов по названию улицы с использованием вспомогательного столбца в Excel

Чтобы отсортировать адреса по названию улицы в Excel, сначала извлеките только названия улиц во вспомогательный столбец. Этот простой подход отлично работает при однородном формате адресов, например «123 Apple St», и идеально подходит для быстрых проектов или несложных списков адресов.

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

=MID(A1,FIND(" ",A1)+1,255)

(Здесь A1 указывает на ячейку над вашими адресными данными — измените её, если ваши данные начинаются в другом месте.)
После ввода формулы нажмите Enter и перетащите маркер заполнения вниз, чтобы применить формулу ко всем строкам диапазона адресов. Эта формула находит первый пробел в каждом адресе и возвращает всё, что следует после него — название улицы и возможный суффикс. Убедитесь, что все адреса имеют одинаковую структуру; в противном случае формула может работать некорректно.

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

2. Выделите весь вспомогательный столбец (столбец с извлечёнными названиями улиц), затем перейдите на вкладку Данные и нажмите По возрастанию. Адреса будут отсортированы по возрастанию (в алфавитном порядке).

снимок экрана сортировки адресов по названию улицы с использованием формулы, шаг 2: сортировка

3. В появившемся диалоговом окне Предупреждение о сортировке выберите Расширить выделенный диапазон, чтобы вся информация об адресах оставалась связанной при сортировке.

снимок экрана сортировки адресов по названию улицы с использованием формулы, шаг 3: расширить выделение

4. Нажмите Сортировать. Теперь ваш Список адресов будет упорядочен по названиям улиц, так что все адреса на одной улице окажутся рядом.

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

Примечание: Этот метод лучше всего работает со стандартизированными форматами адресов. Если в ячейках с адресами используются неоднородные шаблоны или несколько пробелов перед названием улицы, формулу может потребоваться скорректировать. Всегда проверяйте точность результатов на нескольких примерах после применения формулы.

Преимущества: Простота — не требует дополнительных инструментов.
Недостатки: Зависит от однородного формата; при нестандартных адресах потребуется дополнительная доработка.


Сортировка адресов по номеру улицы с использованием вспомогательного столбца в Excel

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

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

=VALUE(LEFT(A1,FIND(" ",A1)-1))

(Где A1 — первая ячейка с адресом в вашем списке; при необходимости скорректируйте ссылку.) Нажмите Enter после ввода формулы. Эта формула находит первый пробел и возвращает все символы до него, преобразуя их в число. Если номера домов в ваших адресах указаны в начале, формула будет работать корректно. Просто перетащите маркер заполнения вниз, чтобы применить её ко всему списку.

снимок экрана сортировки адресов по названию улицы с использованием формулы 2

2. Выделите созданный вспомогательный столбец, перейдите на вкладку Данные и нажмите По возрастанию(или)Сортировка от наименьшего к наибольшему в новых версиях Excel).

снимок экрана сортировки адресов по названию улицы с использованием формулы 2, шаг 2: сортировка

3. В диалоговом окне Предупреждение о сортировке выберите Расширить выделенный диапазон, чтобы сортировались полные строки.

снимок экрана сортировки адресов по названию улицы с использованием формулы 2, шаг 3: расширить выделение

4. Нажмите Сортировать, чтобы применить изменения. Теперь ваши адреса отсортированы по извлечённому номеру улицы.

снимок экрана результата сортировки адресов по названию улицы с использованием формулы 2

Совет:Если вы предпочитаете сохранить номер улицы как текст или не планируете выполнять числовую сортировку, можно также использовать:

=LEFT(A1,FIND(" ",A1)-1)

Эта версия извлекает номер в виде текстовой строки.

Меры предосторожности: Если адреса начинаются со слов, а не с цифр (например, «Main Street5»), эти формулы не будут работать корректно. Всегда проверяйте структуру своих адресных данных перед использованием формулы.

Преимущества: Быстро и удобно при простом формате адресов.
Недостатки: Не обрабатывает адреса, в которых название или суффикс стоят перед номером, а также адреса с несколькими числами.


Код VBA — автоматизация сортировки адресов путём извлечения названий/номеров улиц и сортировки списка с помощью макроса

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

Примечание: Этот макрос VBA извлекает название улицы (часть после первого пробела) из каждого адреса в столбце A и сортирует весь список по этим названиям. С небольшими доработками он также может извлекать и сортировать по номеру дома.

1. Нажмите Разработчик > Visual Basic. В открывшемся окне выберите Вставка > Модуль и вставьте следующий код VBA в окно модуля:

Sub SortAddressesByStreetName()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim tempCol As Long
    Dim i As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set ws = ActiveSheet
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
    tempCol = ws.Cells(1, ws.Columns.Count).End(xlToLeft).Column + 1
    
    ' Create helper column with street names
    For i = 1 To lastRow
        ws.Cells(i, tempCol).Value = Trim(Mid(ws.Cells(i, 1).Value, InStr(ws.Cells(i, 1).Value, " ") + 1))
    Next i
    
    ' Sort the whole data range by the helper column
    ws.Sort.SortFields.Clear
    ws.Sort.SortFields.Add Key:=ws.Range(ws.Cells(1, tempCol), ws.Cells(lastRow, tempCol)), _
                           SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    
    With ws.Sort
        .SetRange ws.Range(ws.Cells(1, 1), ws.Cells(lastRow, tempCol))
        .Header = xlNo
        .Apply
    End With
    
    ' Delete helper column
    ws.Columns(tempCol).Delete
End Sub

2. Чтобы запустить код, при активном списке адресов нажмите кнопку Кнопка «Выполнить»или клавишу F5. Ваши адреса в столбце A теперь будут отсортированы по алфавиту по названию улицы.

Эта версия извлекает только число до первого пробела и сортирует его в числовом порядке.

Устранение неполадок:
– Убедитесь, что адреса находятся в столбце A, или скорректируйте код в соответствии с расположением ваших данных.
– Если ваши данные содержат заголовок, возможно, потребуется изменить параметр Header = xlYes, чтобы он не участвовал в сортировке.
– Всегда создавайте резервную копию перед запуском массовых макросов VBA.

Преимущества: Не требует вспомогательных столбцов и отлично подходит для больших наборов данных или повторяющихся операций сортировки.
Недостатки: Первоначальная настройка требует разрешения на запуск макросов и базового понимания VBA.


Другие встроенные методы Excel — использование Power Query для разделения адресных столбцов и прямой сортировки внутри Power Query без вспомогательных столбцов

Power Query, доступный в современных версиях Excel (Excel 2016 и новее, а также Microsoft 365), предлагает гибкий способ разделить адреса на компоненты — например, номер и название улицы — без использования формул. Это идеальное решение, если вы хотите избежать формул и вспомогательных столбцов или если ваши адреса имеют разнообразные форматы, которые сложно эффективно обработать стандартными формулами. Power Query сохраняет все выполненные шаги, обеспечивая возможность легко обновлять результат по мере роста данных.

1. Выделите данные с адресами и перейдите на вкладку Данные, затем выберите Из таблицы/диапазона (при необходимости создайте таблицу).
2. В окне Power Query выберите столбец с адресами и нажмите Разделить столбец > По разделителю. В качестве разделителя выберите Пробел и укажите первый разделитель слева для типа операции «Разделить по».
3. Адрес будет разделён на два столбца: номер дома и оставшуюся часть улицы/адреса. При необходимости переименуйте новые столбцы.
4. Чтобы отсортировать данные, щёлкните стрелку в заголовке столбца с названием улицы или номером дома и выберите Сортировать по возрастанию или Сортировать по убыванию .
5. Нажмите Закрыть и загрузить , чтобы вставить отсортированные результаты обратно на лист.

Дополнительные советы:

  • Если структура ваших адресов неоднородна, вы можете дополнительно обрабатывать столбцы в Power Query с помощью пользовательских разделений или преобразований.
  • Шаги Power Query записываются автоматически; при изменении исходных данных вы сможете легко обновить результат.
  • Этот метод не изменяет исходные данные, повышая безопасность хранения оригинальных записей.

Преимущества: Исходный лист остаётся неизменным; отлично справляется даже со сложными структурами адресов; не требует ручного управления формулами.
Недостатки: Требуется Excel 2016 или новее; интерфейс может показаться незнакомым новым пользователям.


Краткое резюме и рекомендации по устранению проблем:
– Перед применением формул или макросов VBA убедитесь, что формат ваших адресов единообразен.
– Всегда проверяйте результаты сортировки, особенно после использования вспомогательных столбцов или кода.
– Если структура данных нестандартна (например, отсутствуют номера домов или названия улиц в конце), скорректируйте формулы или воспользуйтесь Power Query для более надёжного разделения.
– Регулярно создавайте резервные копии перед использованием VBA или продвинутых инструментов обработки данных — это поможет избежать случайной потери информации.
– Выбирайте подходящий метод (формулы, VBA или Power Query) в зависимости от объёма данных, версии Excel и вашего уровня владения инструментом.
– Если вы не уверены, какой метод лучше всего подходит, выбирайте Power Query: он обеспечивает максимальную гибкость и является самым безопасным вариантом для недеструктивного редактирования.


Связанные статьи:

Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

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

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек