Excel sắp xếp địa chỉ IP

Bài đăng này có lẽ chỉ dành cho những người đam mê, những người quan tâm sâu sắc đến việc sắp xếp chính xác địa chỉ IP trong bảng tính Excel. Cách tiếp cận này sử dụng các hàm thuần túy – không có VBA. Tôi thích nó hơn một số cách tiếp cận khác bởi vì, thành thật mà nói, chúng bay ngay trên đầu tôi

Hãy bắt đầu với một cột địa chỉ IP – như cột này

Excel sắp xếp địa chỉ IP

Các bảng Excel rất đẹp, để làm việc với dữ liệu như thế này. Nếu bạn chuyển đổi dữ liệu của mình thành một bảng, thì bạn có thể sử dụng các tham chiếu cột đã đặt tên mà chúng ta sẽ thấy trong giây lát. Vào Insert > Table và bạn nhận được một cái gì đó như thế này

Excel sắp xếp địa chỉ IP

Bạn không thể sắp xếp cột này một cách có ý nghĩa, nguyên trạng. Chúng tôi cần một cột bổ sung mà chúng tôi sẽ sử dụng để chuyển đổi nội dung của cột IP

Excel sắp xếp địa chỉ IP

Và sau đó tại bất kỳ hàng nào trong cột đó, chúng tôi nhập công thức này

=
IF(0,"##### FIRST OCTET #####","") &
TEXT(
  LEFT(
    [@IP],
    FIND(
      CHAR(134),
      SUBSTITUTE(
        [@IP],
        ".",
        CHAR(134),
        1
      )
    ) - 1
  ),
  "000"
)
& "." &
IF(0,"##### SECOND OCTET #####","") &
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,"##### THIRD OCTET #####","") &
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,"##### FOURTH OCTET #####","") &
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
  )
)

Bạn kết thúc với cái này, bây giờ bạn có thể thực hiện sắp xếp theo thứ tự bảng chữ cái (A-Z)

Excel sắp xếp địa chỉ IP

Thích thì ẩn cái cột đó đi, khỏi cần nhìn độ gớm ghiếc của nó. Sau đó, bất cứ khi nào bạn cần dùng đến, hãy vào Dữ liệu> Sắp xếp

Tôi nhận ra đây là một bài viết cũ, nhưng vì lợi ích của việc cung cấp một giải pháp hiệu quả, tôi trình bày như sau

Chỉ cần đặt công thức này vào một ô liền kề và cập nhật các tham chiếu để trỏ đến ô chứa địa chỉ IP của bạn (A1 trong ví dụ này). Điều này sẽ tạo ra một kết quả tương tự như 010. 121. 008. 030, sau đó có thể được sắp xếp (chính xác) theo thứ tự bảng chữ cái. Sau đó, đặt chiều rộng của cột mới thành 0 và voila. Đã đến lúc thưởng thức một tách cà phê

=TEXT(MID(A1,1,FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1)+1,FIND(".",A1,FIND(".",A1)+1)-1-FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1)+1)+1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)-1-FIND(".",A1,FIND(".",A1)+1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)+1,LEN(A1)),"000")
Vì các địa chỉ IP thường bỏ qua các số 0 ở đầu nên việc sử dụng các kỹ thuật sắp xếp tích hợp có thể dẫn đến việc sắp xếp không chính xác

Mục lục

Để hiểu tại sao sắp xếp địa chỉ IP không phải là một nhiệm vụ đơn giản, trước tiên chúng ta phải xem xét cách cấu trúc địa chỉ IP

Địa chỉ IP là một số 32 bit được định dạng thành bốn trường 8 bit được phân tách bằng dấu chấm. Hãy xem xét số 32 bit sau

11000000.10011110.00000001.00100110

Mỗi byte là một chuỗi tám bit, mỗi bit được phân tách bằng dấu chấm. Nếu chúng ta chuyển đổi từng byte thành số thập phân, chúng ta sẽ có thông tin sau

192.158.1.38

Nhưng điều gì sẽ xảy ra nếu chúng ta thử so sánh giá trị này với một địa chỉ IP khác như 192. 158. 1. 102

Nếu chúng ta sử dụng sắp xếp theo thứ tự bảng chữ cái, giá trị kết thúc bằng 102 sẽ xuất hiện trước giá trị kết thúc bằng 38. Đây là cách sắp xếp không chính xác vì cái trước thực sự có giá trị cao hơn cái sau

Để khắc phục điều này, chúng tôi sẽ phải thêm các số 0 đứng đầu vào địa chỉ IP của mình khi so sánh chúng. Trong ví dụ bên dưới, bạn có thể quan sát thấy rằng việc thêm các số 0 vào đầu mỗi byte sẽ dẫn đến kiểu sắp xếp chính xác

Excel sắp xếp địa chỉ IP

 

Bây giờ chúng ta đã biết cách sắp xếp chính xác địa chỉ IP, liệu có thể thực hiện giải pháp này trong Excel không?

Trong phần tiếp theo, chúng ta sẽ khám phá một bảng tính thực tế giải quyết vấn đề sắp xếp địa chỉ IP này. Sau đó, chúng tôi sẽ giải thích các công thức và phương pháp được sử dụng trong bảng tính đó

 

 

Một ví dụ thực tế về sắp xếp địa chỉ IP trong Excel

Chúng ta hãy xem một bảng tính thực tế đã sắp xếp thành công địa chỉ IP bằng cách mở rộng các byte bằng các số 0 ở đầu

Bảng tính mẫu bên dưới đã sắp xếp thành công các địa chỉ IP được cung cấp trong Cột A. Bảng đã sử dụng một công thức để mở rộng địa chỉ IP với các số 0 ở đầu. Mỗi byte bây giờ sẽ có ba chữ số

Excel sắp xếp địa chỉ IP

 

Để lấy các giá trị trong Cột C, chúng ta chỉ cần sử dụng công thức dài dòng sau

=TEXT(LEFT(A3;FIND(".";A3;1)-1);"000") & "." & TEXT(MID(A3;FIND( ".";A3;1)+1;FIND(".";A3;FIND(".";A3;1)+1)-FIND(".";A3;1)-1);"000") & "." & TEXT(MID(A3;FIND(".";A3;FIND(".";A3;1)+1)+1;FIND(".";A3; FIND(".";A3;FIND(".";A3;1)+1)+1)-FIND(".";A3;FIND(".";A3;1)+1)-1); "000") & "." & TEXT(RIGHT(A3;LEN(A3)-FIND(".";A3;FIND(".";A3;FIND( ".";A3;1)+1)+1));"000")

Công thức trên bao gồm bốn nối. Hãy tập trung vào chuỗi đầu tiên được nối

TEXT(LEFT(A3;FIND(".";A3;1)-1);"000") 

The LEFT(A3;FIND(".";A3;1)-1) chỉ cần trả về byte được tìm thấy trước dấu chấm đầu tiên. Sau đó, chúng tôi sử dụng công thức TEXT để định dạng số để thêm các số 0 ở đầu. Ba phiên bản khác của hàm TEXT trong công thức chính thực hiện quy trình tương tự.

Bạn có thể tạo bản sao của riêng mình cho bảng tính ở trên bằng cách sử dụng liên kết được đính kèm bên dưới.  

Tạo một bản sao của bảng tính mẫu

Nếu bạn đã sẵn sàng thử tự sắp xếp địa chỉ IP trong Excel, hãy bắt đầu tự viết. Chuyển sang phần tiếp theo để tìm hiểu cách

 

 

Cách sắp xếp địa chỉ IP từ thấp đến cao trong Excel

Phần này sẽ hướng dẫn bạn các bước cần thiết để sắp xếp địa chỉ IP từ thấp đến cao trong Excel một cách chính xác. Bạn sẽ tìm hiểu cách chúng tôi có thể sử dụng một công thức với các hàm TEXT,

=TEXT(MID(A1,1,FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1)+1,FIND(".",A1,FIND(".",A1)+1)-1-FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1)+1)+1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)-1-FIND(".",A1,FIND(".",A1)+1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)+1,LEN(A1)),"000")
0 và
=TEXT(MID(A1,1,FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1)+1,FIND(".",A1,FIND(".",A1)+1)-1-FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1)+1)+1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)-1-FIND(".",A1,FIND(".",A1)+1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)+1,LEN(A1)),"000")
1 để thêm các số 0 ở đầu vào địa chỉ IP ban đầu của chúng tôi

Làm theo các bước sau để bắt đầu sử dụng công thức địa chỉ IP

  1. Đầu tiên, chọn ô chứa công thức mở rộng địa chỉ IP. Trong ví dụ này, chúng tôi đã chọn ô B2 ngay bên phải địa chỉ IP đầu tiên để sắp xếp.
    Excel sắp xếp địa chỉ IP
  2. Tiếp theo, chúng ta có thể dán công thức địa chỉ IP của mình vào thanh công thức. Đảm bảo rằng ô được tham chiếu thẳng hàng với vị trí của địa chỉ IP mà bạn muốn mở rộng
    Excel sắp xếp địa chỉ IP
  3. Chỉ cần kéo công thức xuống trong B2 để điền vào phần còn lại của cột B. Mỗi địa chỉ IP bây giờ sẽ có tổng cộng mười hai chữ số.
    Excel sắp xếp địa chỉ IP
  4. Tiếp theo, chúng ta có thể dán các giá trị trong cột B vào một phạm vi ô khác. Chúng tôi sử dụng tùy chọn Dán Đặc biệt để trả về các giá trị thay vì công thức ban đầu
    Excel sắp xếp địa chỉ IP
  5. Chọn dữ liệu vừa dán. Chuyển đến tab Dữ liệu và tìm biểu tượng sắp xếp A-Z. Thứ tự sắp xếp này sẽ sắp xếp các giá trị từ giá trị thấp nhất đến giá trị cao nhất
    Excel sắp xếp địa chỉ IP
  6. Excel sẽ hỏi người dùng xem họ có muốn mở rộng vùng chọn trong khi sắp xếp không. Chúng tôi muốn chọn tùy chọn này để các giá trị trong cột A cũng sẽ tuân theo thứ tự sắp xếp.
    Excel sắp xếp địa chỉ IP
  7. Các giá trị địa chỉ IP ban đầu trong Excel bây giờ sẽ được sắp xếp theo đúng thứ tự từ thấp đến cao
    Excel sắp xếp địa chỉ IP

 

 

Đó là tất cả những gì bạn cần nhớ để bắt đầu sắp xếp địa chỉ IP trong Excel. Hướng dẫn từng bước này cho biết cách chúng ta có thể sử dụng các hàm

=TEXT(MID(A1,1,FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1)+1,FIND(".",A1,FIND(".",A1)+1)-1-FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1)+1)+1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)-1-FIND(".",A1,FIND(".",A1)+1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)+1,LEN(A1)),"000")
0, TEXT
=TEXT(MID(A1,1,FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1)+1,FIND(".",A1,FIND(".",A1)+1)-1-FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1)+1)+1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)-1-FIND(".",A1,FIND(".",A1)+1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)+1,LEN(A1)),"000")
1 để thêm các số 0 đứng đầu vào mỗi trong số bốn byte tạo nên địa chỉ IP

Sắp xếp địa chỉ IP chỉ là một cách bạn có thể sử dụng Excel để thực hiện các tác vụ số với dữ liệu của mình. Với rất nhiều hàm Excel khác ngoài kia, bạn chắc chắn có thể tạo các công thức hoàn hảo cho bảng tính của mình.

Bạn có muốn tìm hiểu thêm về những gì Excel có thể làm không? . newsletter to be the first to know about the latest guides and tutorials from us.

Excel sắp xếp địa chỉ IP

Nhận email từ chúng tôi về Excel

Mục tiêu của chúng tôi trong năm nay là tạo ra nhiều hướng dẫn chi tiết, phong phú cho những người dùng Excel như bạn. Nếu bạn thích cái này, bạn sẽ thích những gì chúng tôi đang làm. Độc giả nhận được ✨ quyền truy cập sớm ✨ vào nội dung mới