Оглавление
Excel рассматривает IP-адрес как текст. Поэтому Сортировка и фильтр Инструмент в excel не может правильно сортировать IP-адреса. В этой статье показано 6 различных способов сортировки IP-адресов в Excel. Следующий рисунок иллюстрирует, как работает большинство методов.
Скачать Практическое пособие
Вы можете скачать рабочую тетрадь по практике, используя кнопку загрузки ниже.
Сортировка IP-адресов.xlsm6 способов сортировки IP-адресов в Excel
Я собираюсь проиллюстрировать для вас 6 простых способов сортировки IP-адресов в Excel. Мы будем использовать следующий набор данных, чтобы показать эти методы. Итак, давайте начнем!
1. Сортировка IP-адреса с помощью формулы Excel
В этом методе мы будем использовать формулу для преобразования IP-адресов, чтобы их можно было правильно отсортировать в Excel. Для этого выполните следующие действия.
Шаг 1: Сначала введите следующую формулу в ячейку C5 :
=TEXT(LEFT(B5,FIND(".",B5,1)-1),"000") & "." & TEXT(MID(B5,FIND( ".",B5,1)+1,FIND(".",B5,FIND(".",B5,1)+1)-FIND(".",B5,1)-1),"000") & "." & TEXT(MID(B5,FIND(".",B5,FIND(".",B5,1)+1)+1,FIND(".",B5, FIND(".",B5,FIND(".",B5,1)+1)+1)-FIND(".",B5,FIND(".",B5,1)+1)-1), "000") & "." & TEXT(RIGHT(B5,LEN(B5)-FIND(".",B5,FIND(".",B5,FIND( ".",B5,1)+1)+1)),"000"
) Эта формула находит точки(.) в ячейке B5 и, заполняет каждый октет числа нулями/нолями, если любой из них содержит менее трех цифр.
Затем скопируйте эту формулу в ячейки ниже с помощью команды Наполнительная рукоятка Инструмент. В результате все IP-адреса будут заполнены нулями в качестве первого.
Шаг 2: После этого выберите все преобразованные IP-адреса.
Шаг 3: Затем отсортируйте их с помощью Сортировка и фильтр инструмент из Главная Вы также можете щелкнуть правой кнопкой мыши на выделенных ячейках и отсортировать их оттуда.
Шаг 4: Разверните выбор при сортировке следующим образом.
Теперь оба преобразованных IP-адреса и исходный IP-адрес отсортированы, как показано ниже.
Альтернативная формула:
Шаг 5: Использование следующей формулы также дает тот же результат.
=(VALUE(LEFT(B5,FIND(".",B5)-1))*10^9)+(VALUE(LEFT(RIGHT(B5,LEN(B5)-FIND(".",B5)),FIND(".",RIGHT(B5,LEN(B5)-FIND(".",B5)))-1))*10^6)+VALUE(LEFT(RIGHT(RIGHT(B5,LEN(B5)-FIND(".",B5)),LEN(RIGHT(B5,LEN(B5)-FIND(".",B5)))-FIND(".",RIGHT(B5,LEN(B5)-FIND(".",B5)))),FIND(".",RIGHT(RIGHT(B5,LEN(B5)-FIND(".",B5)),LEN(RIGHT(B5,LEN(B5)-FIND(".",B5)))-FIND(".",RIGHT(B5,LEN(B5)-FIND(".",B5)))))-1))*10^3+VALUE(RIGHT(RIGHT(RIGHT(B5,LEN(B5)-FIND(".",B5)),LEN(RIGHT(B5,LEN(B5)-FIND(".",B5)))-FIND(".",RIGHT(B5,LEN(B5)-FIND(".",B5)))),LEN(RIGHT(RIGHT(B5,LEN(B5)-FIND(".",B5)),LEN(RIGHT(B5,LEN(B5)-FIND(".",B5)))-FIND(".",RIGHT(B5,LEN(B5)-FIND(".",B5)))))-FIND(".",RIGHT(RIGHT(B5,LEN(B5)-FIND(".",B5)),LEN(RIGHT(B5,LEN(B5)-FIND(".",B5)))-FIND(".",RIGHT(B5,LEN(B5)-FIND(".",B5)))))))
Но в этой формуле IP преобразуются в десятичные числа, а не заполняются нулями, как в предыдущей. Вы можете сортировать IP так же, как мы сортировали их ранее.
Читать далее: Как сортировать и фильтровать данные в Excel (полное руководство)
2. Мастер сортировки IP-адресов по тексту в столбцах
Альтернативным способом сортировки IP-адресов является использование функции Текст в столбцы мастер в Excel. Для этого выполните следующие действия.
Шаг 1: Во-первых, выберите все IP следующим образом. Оставьте 4 соседние клетки справа пустыми.
Шаг 2: Далее нажмите на Текст в столбцы значок из Данные вкладку, как показано на следующем рисунке.
Шаг 3: После этого пометьте свой тип данных как Делимитированный и затем нажмите на Следующий .
Шаг 4: Теперь проверьте Другое вкладку и введите точку(.) в текстовое поле. Затем нажмите кнопку Следующий кнопка.
Шаг 5: После этого сохраните общий формат данных. Затем выберите пункт назначения следующим образом $C$5 Это можно сделать, нажав на маленькую стрелку вверх в правой части поля назначения. Затем выберите ячейку C5 . И, наконец, попал в Отделка кнопка.
Но если соседние ячейки не пустые, их нужно заменить, нажав на кнопку OK .
Шаг 6: Теперь IP-адреса разделены на 4 октета. Сохраните весь диапазон данных выбранным, как показано на рисунке.
Шаг 7: Теперь вам нужно выполнить пользовательскую сортировку с их помощью Сортировка и фильтр инструмент.
Шаг 8: Сначала отсортируйте их по столбцу C. Затем добавьте новые уровни и отсортируйте их по столбцам D, E и F соответственно. Теперь, если вы нажмете кнопку OK кнопка , IP-адреса будут отсортированы.
При желании октеты можно скрыть или удалить.
Связанный контент: Как отсортировать данные по двум столбцам в Excel (5 простых способов)
3. Упорядочить IP-адреса в таблице Excel
IP-адреса можно отсортировать в таблице Excel с помощью другой формулы. Для применения этого метода выполните следующие действия.
Шаг 1: Сначала создайте Таблица Excel используя набор данных, как показано ниже.
Шаг 2: Щелкните в любом месте ячейки "Преобразовать IP". Затем используйте следующую формулу в этой таблице :
=IF(0,"#####FIRSTOCTET#####","")&TEXT(LEFT([@IP],FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),1))-1),"000")&"."&IF(0,"#####SECONDOCTET#####","")&TEXT(MID([@IP],FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),1))+1,FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),2))-FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),1))),"000")&"."&IF(0,"#####THIRDOCTET#####","")&TEXT(MID([@IP],FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),2))+1,FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),3))-FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),2))),"000")&"."&IF(0,"#####FOURTHOCTET#####","")&TEXT(MID([@IP],FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),3))+1,IF(ISERROR(FIND("/",[@IP])),LEN([@IP]),FIND("/",[@IP])-1)-FIND(CHAR(134),SUBSTITUTE([@IP],".",CHAR(134),3))),"000")&IF(0,"#####CIDR#####","")&IF(ISERROR(FIND("/",[@IP])),"",RIGHT([@IP],LEN([@IP])-FIND("/",[@IP])+1))
В результате все IP-адреса будут заполнены нулями, как это было сделано ранее.
Шаг 3: Теперь отсортируйте преобразованные IP-адреса, как это было сделано в предыдущих методах.
Наконец, IP-адреса сортируются.
Связанный контент: Как отсортировать выпадающий список в Excel (5 простых способов)
Похожие чтения:
- Случайная сортировка в Excel (формулы + VBA)
- Как отсортировать по цвету в Excel (4 критерия)
- Сортировка двух столбцов в Excel по совпадению (как точное, так и частичное совпадение)
- Как добавить кнопку сортировки в Excel (7 способов)
- Сортировка по возрастанию в Excel (3 простых способа)
4. Сортировка IP-адресов с помощью флэш-заполнения в Excel
Если первые три октета вашего набора данных одинаковы, то для их сортировки можно использовать Flash Fill в Excel. Возможно, это самый быстрый и простой метод сортировки IP-адресов в Excel. Шаги для этого метода рассмотрены ниже.
Шаг 1: Введите последние цифры октета первого IP-адреса в ячейке C5 Теперь, если вы сделаете то же самое для второго IP, вы увидите список, окрашенный в серый цвет, как показано ниже. Это последние октеты IP.
Шаг 2: Теперь удар Войти и список будет заполнен. Выберите весь список и отсортируйте их.
Не забудьте расширить выбор при сортировке.
Теперь IP-адреса отсортированы следующим образом.
Связанный контент: Как отменить сортировку в Excel (3 метода)
5. Сортировка IP-адресов с помощью функции, определяемой пользователем (UDF)
Еще один удивительный способ сортировки IP-адресов - использование Функции, определяемые пользователем (UDF) в Excel. Для этого выполните следующие действия.
Шаг 1: Сначала откройте Microsoft Visual Basic for Applications(VBA) окно. Клавиатурное сокращение ALT+F11 в Windows и Opt+F11 в Mac. Вы также можете сделать это из Разработчик Если она не видна, перейдите на вкладку Файл >> Опции >> Лента на заказ >> Основные вкладки и установите флажок для Разработчик и затем нажать OK .
Шаг 2: Из Вставка выберите Модуль .
Шаг 3: Теперь скопируйте следующий код и вставьте его в пустое поле.
Function SortIP(IP As String) As String Dim FirstDot As Integer Dim SecondDot As Integer Dim ThirdDot As Integer Dim FirstOctet As String Dim SecondOctet As String Dim ThirdOctet As String Dim FourthOctet As String FirstDot = InStr(1, IP, ".", vbTextCompare) SecondDot = InStr(FirstDot + 1, IP, ".", vbTextCompare) ThirdDot = InStr(SecondDot + 1, IP, ".", vbTextCompare) FirstOctet = Left(IP,FirstDot - 1) SecondOctet = Mid(IP, FirstDot + 1, SecondDot - FirstDot - 1) ThirdOctet = Mid(IP, SecondDot + 1, ThirdDot - SecondDot - 1) FourthOctet = Mid(IP, ThirdDot + 1, Len(IP)) SortIP = Right("000" & FirstOctet, 3) & "." SortIP = SortIP & Right("000" & SecondOctet, 3) & "." SortIP = SortIP & Right("000" & ThirdOctet, 3) & "." SortIP = SortIP & Right("000" & ThirdOctet, 3) & "." SortIP = SortIP & Right("000"& ЧетвертыйОктет, 3) Конец функции
Шаг 4: Затем закройте его из Файл и вернитесь в Excel.
Шаг 5: Теперь введите следующую формулу в ячейку C5 :
=SortIP(B5)
Шаг 6: Вы можете видеть, что IP заполнен нулями. После этого скопируйте формулу в ячейки ниже. Отсортируйте преобразованные IP, следуя тем же процедурам, что и в предыдущих методах.
Наконец, все IP сортируются, как показано ниже.
Читать далее: Как использовать функцию сортировки в Excel VBA (8 подходящих примеров)
6. упорядочивание IP-адресов с помощью VBA в Excel
Существует другой способ сортировки IP-адресов с помощью VBA Этот метод состоит из следующих этапов.
Шаг 1: Выберите ячейки, содержащие IP-адреса.
Шаг 2: Затем откройте VBA скопируйте следующий код и вставьте его в пустое окно.
Sub ConvertIP() Dim xReg As New RegExp Dim xMatchs As MatchCollection Dim xMatch As Match Dim xRng As Range Dim xCellRange As Range Dim I As Long Dim xConv() As String On Error Resume Next Set xRng = Application.InputBox("Select cell/Range:", "Convert IP Address", Selection.Address, , , , , 8) If xRng Is Nothing Then Exit Sub With xReg .Global = True .Pattern = "\d{1,3}.+\d{1,3}.+\d{1,3}.+\d{1,3}.+\d{1,3}"For Each xCellRange In xRng Set xMatchs = .Execute(xCellRange.Value) If xMatchs.Count = 0 Then GoTo xPause For Each xMatch In xMatchs xConv = Split(xMatch, ".") For I = 0 To UBound(xConv) xConv(I) = Right("000" & xConv(I), 3) If I UBound(xConv) Then xConv(I) = xConv(I) & "." End If Next Next xCellRange.Value = Join(xConv, "") xPause: Next End With End Sub end Sub
Шаг 3: Теперь из Инструменты выберите Ссылки Откроется новое диалоговое окно.
Шаг 4: Прокрутите вниз и проверьте Регулярные выражения Microsoft VBScript 5.5 из списка Доступные ссылки . Затем нажать OK .
Шаг 5: Теперь нажмите F5 Вы можете либо ввести диапазон ячеек, либо вернуться в excel и выбрать весь диапазон ячеек. Так как мы выбрали весь диапазон в шаг 1 Excel автоматически примет это за исходные данные. Наконец, нажмите кнопку OK кнопка.
Примечание: Не сводите к минимуму VBA окно, когда вы нажимаете кнопку F5 .
Вы видите, что IP-адреса заполнены нулями. Теперь вы можете легко сортировать их, как и раньше.
Связанный контент: Как сортировать ListBox с помощью VBA в Excel (полное руководство)
О чем следует помнить
- Метод 4 работает только в том случае, если 3 из 4 октетов IP-адреса содержат одинаковые цифры.
- Прямое использование Сортировка и фильтр инструмент может дать правильный результат для этого набора данных. Только потому, что три октета IP одинаковы.
Заключение
Теперь вы знаете 6 различных способов сортировки IP-адресов в Excel. Какой из них вам больше нравится? Знаете ли вы другие простые способы сортировки IP-адресов в Excel? Пожалуйста, сообщите нам об этом в разделе комментариев. Там же вы можете задать дополнительные вопросы.