按 IP 地址对 Excel 列进行排序

Can*_*uke 19 sorting microsoft-excel

我有一个相当大(超过 200 行)的 Excel 电子表格,其中列出了我网络中的项目(即打印机、服务器、工作站、网络投影仪等),第一列之一是 IP 地址字段,它采用192.168.x.y. 当我尝试对其进行排序时,我的问题是它(例如)从192.168.0.85192.168.0.9. 我想看到的是它基于第一3个字节排序,那么最后一个字节逻辑(即.1.2.3,等)。这可能吗?如果是这样,如何?

ris*_*raj 18

正如 nixda 在评论中提到的,帮助列将使这成为可能。之后您有两种选择来维护工作表:

  • 在拆分帮助器列中添加所有新 IP。
  • 对新添加的内容重复文本到列的过程。

这是程序:

  1. 选择您的 IP 列并单击Data>Text-to-Columns 文本到列

  2. 选择分隔选项并单击下一步。选中Other复选框并输入句点.。点击下一步。 选择 。 作为分隔符

  3. 保留所有列,将它们保留为常规,单击范围图标以编辑该Destination部分。 改变目标 1

  4. 选择要在其中显示新文本的列。按 Enter 键。 改变目标 2

  5. 确保选择了您的范围,然后单击Data> Sort。输入排序条件。继续为每个八位字节添加级别。 排序

  6. 这是最终结果: 结果


Joh*_*mer 9

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

只需将此公式放在相邻的单元格中并更新引用以指向包含您的 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)

  • 喜欢这个,完美。一个公式,一个“助手”单列。谢谢。 (2认同)