Jak posortować adres IP w programie Excel (6 metod)

  • Udostępnij To
Hugh West

Excel traktuje Adres IP jako tekst. Dlatego Sortowanie & Filtr narzędzie w Excelu nie potrafi poprawnie posortować adresów IP. Ten artykuł pokazuje 6 różnych sposobów na posortowanie adresu IP w Excelu. Poniższy obrazek ilustruje działanie większości metod.

Pobierz Zeszyt ćwiczeń

Zeszyt ćwiczeń można pobrać korzystając z poniższego przycisku do pobrania.

Sortowanie adresu IP.xlsm

6 sposobów na sortowanie adresu IP w Excelu

Mam zamiar zilustrować dla Ciebie 6 łatwych sposobów sortowania adresów IP w Excelu. Użyjemy następującego zbioru danych, aby podkreślić te metody. Więc, skoczmy do środka!

1. sortowanie adresu IP za pomocą formuły programu Excel

W tej metodzie użyjemy formuły do konwersji adresu IP, aby można było je poprawnie posortować w programie Excel. Aby to zrobić, wykonaj poniższe kroki.

Krok 1: Na początku wprowadź w komórce następującą formułę 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" )

Ta formuła znajduje kropki(.) w komórce B5 oraz, wypełnia każdy numer oktetu zerem/zerami, jeśli któryś z nich zawiera mniej niż trzy cyfry.

Następnie skopiuj tę formułę do komórek poniżej, używając polecenia Uchwyt do napełniania Narzędzie. spowoduje to wypełnienie wszystkich adresów IP zerami jako pierwszymi.

Krok 2: Następnie wybierz wszystkie skonwertowane adresy IP.

Krok 3: Następnie posortuj je za pomocą Sortowanie & Filtr narzędzie z Strona główna Możesz również kliknąć prawym przyciskiem myszy na wybrane komórki i posortować je stamtąd.

Krok 4: Rozwiń wybór podczas sortowania w następujący sposób.

Teraz oba konwertowane IP i oryginalne IP są posortowane jak pokazano poniżej.

An Alternative Formula:

Krok 5: Zastosowanie poniższego wzoru również daje ten sam wynik.

=(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)))))))

Ale ta formuła konwertuje IP na liczby dziesiętne, w przeciwieństwie do wypełniania ich zerami we wcześniejszym. Możesz posortować IP w ten sam sposób, w jaki posortowaliśmy je wcześniej.

Read More: Jak sortować i filtrować dane w programie Excel (kompletny przewodnik)

Kreator sortowania adresu IP według tekstu do kolumn

Alternatywnym sposobem sortowania adresów IP jest użycie Tekst w kolumnach kreator w Excelu, przejdź przez poniższe kroki, aby móc to zrobić.

Krok 1: Po pierwsze, wybierz wszystkie IP w następujący sposób. Zachowaj 4 sąsiednie komórki puste po prawej stronie.

Krok 2: Następnie należy kliknąć na Tekst w kolumnach ikona z Dane zakładka, jak pokazano na poniższym rysunku.

Krok 3: Następnie oznacz swój typ danych jako Delimited a następnie kliknij na Następny .

Krok 4: Teraz sprawdź Inne tab i wpisz kropkę(.) w polu tekstowym, a następnie naciśnij przycisk Następny przycisk.

Krok 5: Następnie należy zachować ogólny format danych, po czym wybrać miejsce docelowe jako $C$5 Można to zrobić klikając na małą strzałkę w górę po prawej stronie pola przeznaczenia. Następnie należy wybrać komórkę C5 . And finally hit the Wykończenie przycisk.

Ale jeśli sąsiednie komórki nie są puste, musisz je zastąpić, klikając OK .

Krok 6: Teraz IP są podzielone na 4 oktety. Zachowaj cały zakres danych wybrany jak na rysunku.

Krok 7: Teraz musisz wykonać na nich niestandardowe sortowanie za pomocą Sortowanie & Filtr narzędzie.

Krok 8: Najpierw posortuj je według kolumny C. Następnie dodaj nowe poziomy i posortuj je odpowiednio według kolumny D, E i F. Teraz, jeśli klikniesz na przycisk OK IP zostaną posortowane.

Możesz ukryć lub usunąć oktety, jeśli chcesz.

Related Content: Jak posortować dane według dwóch kolumn w Excelu (5 prostych sposobów)

3. uporządkowanie adresu IP w tabeli programu Excel

Adresy IP mogą być sortowane w tabeli Excela za pomocą innej formuły. Wykonaj poniższe kroki, aby zastosować tę metodę.

Krok 1: Na początku należy utworzyć Tabela Excela z wykorzystaniem zbioru danych, jak pokazano poniżej.

Krok 2: Kliknij w dowolnym miejscu komórki "Convert IP". Następnie stosuje następujący wzór w tej tabeli :

=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))

Spowoduje to wypełnienie wszystkich IP zerami, tak jak to zrobiono wcześniej.

Krok 3: Teraz posortuj przekonwertowane IP tak, jak zrobiono to w poprzednich metodach.

Na koniec adresy IP są sortowane.

Related Content: Jak posortować listę rozwijaną w Excelu (5 prostych metod)

Podobne Lektury:

  • Sortowanie losowe w Excelu (Formuły + VBA)
  • Jak sortować według koloru w Excelu (4 kryteria)
  • Sortuj dwie kolumny w Excelu, aby dopasować (zarówno dokładne, jak i częściowe dopasowanie)
  • Jak dodać przycisk sortowania w programie Excel (7 metod)
  • Sortowanie według kolejności rosnącej w programie Excel (3 proste metody)

4. sortowanie adresu IP za pomocą Flash Fill w Excelu

Jeśli pierwsze trzy oktety twojego zestawu danych są takie same, to możesz użyć wypełnienia Flash w Excelu, aby je posortować. Być może jest to najszybsza i najłatwiejsza metoda sortowania adresów IP w Excelu. Kroki dla tej metody są omówione poniżej.

Krok 1: Wpisz ostatnie cyfry oktetu pierwszego IP w komórce C5 Jeśli teraz zrobisz to samo dla drugiego IP, zobaczysz szarą listę jak poniżej. Są to ostatnie oktety IP.

Krok 2: Teraz uderzenie Wejdź na stronę a lista zostanie wypełniona. Wybierz całą listę i posortuj ją.

Nie zapomnij rozwinąć wyboru podczas sortowania.

Teraz adresy IP są posortowane w następujący sposób.

Related Content: Jak cofnąć sortowanie w programie Excel (3 metody)

5. sortowanie adresu IP przy użyciu funkcji zdefiniowanej przez użytkownika (UDF)

Innym niesamowitym sposobem na sortowanie adresów IP jest użycie Funkcje zdefiniowane przez użytkownika(UDF) w Excelu. Aby to zrobić, przejdź przez poniższe kroki.

Krok 1: Na początku należy otworzyć Microsoft Visual Basic for Applications(VBA) Skrót klawiaturowy to. ALT+F11 w systemie Windows i Opt+F11 w Macu. Możesz to również zrobić z poziomu Deweloper Jeśli nie jest ona widoczna, przejdź do Plik >> Opcje >> Indywidualna wstążka >> Główne zakładki i zaznaczyć pole wyboru dla Deweloper a następnie uderzyć OK .

Krok 2: Z. Wkładka zakładka, wybierz Moduł .

Krok 3: Teraz skopiuj poniższy kod i wklej go do pustego pola.

 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"& FourthOctet, 3) End Function 

Krok 4: Następnie zamknij go z Plik zakładka i powrót do Excela.

Krok 5: Teraz wpisz w komórce następującą formułę C5 :

=SortIP(B5)

Krok 6: Możesz zobaczyć, że IP jest wypełnione zerami. Po tym skopiuj formułę do komórek poniżej. Posortuj te przekształcone IP, stosując te same procedury we wcześniejszych metodach.

Na koniec wszystkie IP są sortowane w sposób przedstawiony poniżej.

Read More: Jak używać funkcji sortowania w Excelu VBA (8 odpowiednich przykładów)

6. uporządkowanie adresu IP za pomocą VBA w Excelu

Istnieje inny sposób sortowania IP przy użyciu VBA Metoda ta składa się z następujących etapów.

Krok 1: Zaznacz komórki zawierające adresy IP.

Krok 2: Następnie otwórz VBA i wstawić moduł jak we wcześniejszej metodzie. Następnie skopiować poniższy kod i wkleić go w pustym oknie.

 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 = "\"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 With End Sub 

Krok 3: Teraz, z Narzędzia zakładka, wybierz Referencje Spowoduje to otwarcie nowego okna dialogowego.

Krok 4: Przewiń w dół i sprawdź Microsoft VBScript Regular Expressions 5.5 z listy Dostępne referencje . Then hit OK .

Krok 5: Teraz naciśnij F5 Można wpisać zakres komórek lub wrócić do Excela i wybrać cały zakres komórek. Ponieważ wybraliśmy cały zakres w krok 1 Excel automatycznie przyjmuje to jako dane wejściowe. Na koniec naciśnij przycisk OK przycisk.

Uwaga: Nie należy minimalizować VBA okno podczas naciskania F5 .

Możesz zobaczyć, że adresy IP są wypełnione zerami. Teraz możesz je łatwo sortować, tak jak wcześniej.

Related Content: Jak sortować ListBox z VBA w Excelu (Kompletny przewodnik)

Rzeczy do zapamiętania

  • Metoda 4 działa tylko wtedy, gdy 3 z 4 oktetów adresu IP mają te same cyfry.
  • Bezpośrednie wykorzystanie Sortowanie & Filtr narzędzie może dać poprawny wynik dla tego zestawu danych. Tylko dlatego, że trzy oktety IP są takie same.

Wniosek

Teraz znasz 6 różnych sposobów sortowania adresów IP w Excelu. Który z nich wolisz najbardziej? Czy znasz jakieś inne łatwe metody sortowania adresów IP w Excelu? Daj nam znać w sekcji komentarzy. Tam też możesz zadać kolejne pytania.

Hugh West jest bardzo doświadczonym trenerem i analitykiem Excela z ponad 10-letnim doświadczeniem w branży. Posiada tytuł licencjata w dziedzinie rachunkowości i finansów oraz tytuł magistra administracji biznesowej. Hugh ma pasję do nauczania i opracował unikalne podejście do nauczania, które jest łatwe do naśladowania i zrozumienia. Jego specjalistyczna wiedza na temat programu Excel pomogła tysiącom studentów i profesjonalistów na całym świecie doskonalić swoje umiejętności i osiągać doskonałe wyniki w karierze. Za pośrednictwem swojego bloga Hugh dzieli się swoją wiedzą ze światem, oferując bezpłatne samouczki programu Excel i szkolenia online, aby pomóc osobom indywidualnym i firmom w pełni wykorzystać swój potencjał.