【发布时间】:2018-05-14 07:02:28
【问题描述】:
我已经看到很多关于如何按域对电子邮件列表进行排序的答案。 我需要的是不同的。 我所拥有的只是需要正确排序的域和子域的列表。 您可能知道,域层次结构从末尾开始,这意味着首先是 .com,然后是域,然后是后缀,例如“万维网” 所以,我需要按相关性对它们进行分组。 例如,我有以下域:
www.somedomain.com
www.someotherdomain.co.uk
www.yetonemoredomain.org
sub.somedomain.com
1.somedomain.com
2.yetonemoredomain.org
3.someotherdomain.co.uk.
www2.yetonemoredomain.org
mail.someotherdomain.co.uk
从 A 到 Z 的普通排序将从左到右开始,但我需要它从右到左排序,点作为字段分隔符。 我知道一个简单的 bash 命令可以做到,但我在 Excel 中需要它。 我正在考虑使用“文本到列”并按点分隔,然后根据需要对列进行排序,但这也可能会导致为 4 级域及更高级别域(例如 x.y.x.somedomain.com)创建列时出现一些问题。 列将从左到右创建,这意味着 .com 可能会落入不同的列而不是最右边的列。 我确信必须有更好的方法来做到这一点。 在此先感谢您的帮助。 齐夫
【问题讨论】:
-
您需要标准的 excel 列解决方案,还是 VBA 函数(在启用宏的工作簿中定义)是可行的解决方案?
-
我不想处理 VBA 和宏,因为我正在尝试创建一个模板并且保存启用宏的模板不是我想要的。我更喜欢直截了当的标准 excel 解决方案,但我越深入,我就越觉得没有办法。我设法通过首先按分隔符拆分列,然后按给定顺序对所有列进行排序,例如第 4 列然后是第 3 列,依此类推。排序后,我将这些列连接成一个列,在它们之间添加一个点,以根据需要对“完整”域列表进行排序。
标签: excel columnsorting