【问题标题】:Excel - How to sort column of email addresses by domain name?Excel - 如何按域名对电子邮件地址列进行排序?
【发布时间】:2018-01-03 18:38:44
【问题描述】:

MS Excel

我有一列电子邮件地址。

我需要根据 @ 之后的所有内容对电子邮件列进行排序。 (在域上)

我已经尝试了数据/文本到列/分隔符@但是,我只能获取拆分出来的域列表进行排序。

我还尝试将其拖到新列中:

=MID(A1, FIND("@",A1, 1)+1, 255)

问题是,我只得到一个域列表,我可以独立于实际地址进行排序。

我知道我肯定做错了什么。

我有什么:

joeblo@somedomain.com
bluewidget@hypothetical.net
jonsmith@wonedomain.com
quickfox@adoman.com
lazydog@zdomain.fl.edu

我想要什么:(结果可以在另一列,也可以不在,我不在乎。)

quickfox@adoman.com
bluewidget@hypothetical.net
joeblo@somedomain.com
jonsmith@wonedomain.com
lazydog@zdomain.fl.edu

如何将带有整个电子邮件地址的该死的排序结果放入另一列,或者仅根据 @????? 之后的所有内容在同一列中排序(保留整个电子邮件地址,现已排序)

提前感谢您的学习体验。

【问题讨论】:

  • 你不能把你的 MID 公式放在 B:B 中,选择所有 A:B 并按 B 排序吗?保持 A 和 B 之间的联系

标签: excel email sorting


【解决方案1】:

复制 A 列中的电子邮件地址和 B 列中的域(使用 =MID(A1, FIND("@",A1, 1)+1, 255)) ,然后选择 A 列和 B 列,然后按 B 排序上升。

【讨论】:

  • 我认为这是最简单的方法。 @James:如果你想要一个 VBA 解决方案,请询问,这对代码来说会很有趣(但我想确定你真的需要它)
  • @Jilji 谢谢!!我发现遗漏的所有其他解决方案的一个小但关键的细节是选择两个列并在 b 上排序!不错...
【解决方案2】:

如果您有 Excel 2013,新的“快速填充”功能也可以做到这一点。创建一个新列;开始进入域;过了一会儿,您会看到其余的域神奇地出现在下面(至少它们对我来说是这样)。

【讨论】:

    【解决方案3】:
    • A 电子邮件地址的内容复制到空白B 列中
    • 选择B 列并输入Ctrl + h(搜索和替换)
    • 搜索字段中,键入*@ 以捕获@ 加上@ 之前的所有内容
    • 替换字段留空,然后点击全部替换按钮
    • B 列进行排序,大功告成。

    【讨论】:

      猜你喜欢
      • 2019-07-18
      • 2015-05-17
      • 2010-12-21
      • 2013-01-07
      • 1970-01-01
      • 1970-01-01
      • 2023-01-28
      • 2014-01-07
      • 2013-09-29
      相关资源
      最近更新 更多