按包含 IP 地址的列对电子表格进行排序(每个单元格一个 IP 地址)

par*_*axi 0 sorting ip-address google-sheets google-sheets-formula

使用默认排序引擎,以下列表被视为已排序:

10.0.0.219
10.0.0.22
10.0.0.223
Run Code Online (Sandbox Code Playgroud)

这是不正确的。排序应该是:

10.0.0.22
10.0.0.219
10.0.0.223
Run Code Online (Sandbox Code Playgroud)

假设前三个八位字节是静态的是不安全的。例如,其他 IP 地址包括:

10.35.10.11
10.28.66.30
Run Code Online (Sandbox Code Playgroud)

Joh*_*mer 5

我意识到这是一个旧帖子,但为了提供一个有效的解决方案,我提出以下内容。

只需将此公式放在相邻的单元格中并更新引用以指向包含您的 IP 地址的单元格(在本例中为 A1)。这将产生类似于 010.121.008.030 的结果,然后可以按字母顺序(正确)对其进行排序。然后将列宽设置为零,瞧。是时候享用一杯咖啡了。

=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")
Run Code Online (Sandbox Code Playgroud)