【问题标题】:excel - separate email and url from same cellexcel - 来自同一单元格的单独电子邮件和网址
【发布时间】:2014-07-22 16:30:21
【问题描述】:

我在 Excel 中有一个如下所示的列表:

Column A
skfjkdf@kasldfj.com
fjls@fdkjd.comhttp://www.kdfj.com
dfkjdf@kdlfj.eshttp://djfkdsf
dkfjs@kljf.com
kjsfld@klfjlf.cahttp://www...

有些单元格只有电子邮件地址 并且有带有电子邮件和网址的单元格(总是没有空格)

我希望单个电子邮件保留在 A 列中 并将它们分开:电子邮件列A,URL列B

我尝试了 TRIM、LEFT、RIGHT 和 SUBSTITUTE,但我无法弄清楚。

非常感谢您的帮助!

【问题讨论】:

    标签: excel excel-formula vba


    【解决方案1】:

    我找到了两种方法。一种没有公式,一种有

    • 在 Excel 中按 Ctrl+H 以调出“查找和替换”对话框。 将“http”替换为“http”(注意空格)

      然后选择要拆分的单元格并转到 Data > Texts to 列。确保在空间上划定界限。

    • 仅提取电子邮件使用

      =LEFT(A1,SEARCH("http",A1,1)-1)
      

      仅提取站点使用

      =RIGHT(A1,LEN(A1)-SEARCH("http",A1,1)+1)
      

      这假设您的所有网站都以“http”开头

    现在应该拆分电子邮件和 URL。

    【讨论】:

    • 我喜欢你建议的第一种方法,简单而不复杂。
    【解决方案2】:

    这又快又脏,我肯定会受到批评,我欢迎它:)

        Sub test()
    
        Range("A1").Select
        Do Until ActiveCell = ""
            this = ActiveCell.Value
            iLen = Len(this)
            charnum = InStr(this, "http")
        If charnum <> 0 Then
            iLen2 = iLen - charnum + 1
            iLen3 = charnum - 1
            ActiveCell.Offset(0, 1).Value = Mid(ActiveCell.Value, charnum, iLen2)
            ActiveCell.Value = Left(ActiveCell, iLen3)
         Else
            ActiveCell.Offset(1, 0).Select
         End If
        Loop
       End Sub
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-26
      • 2012-07-09
      • 2023-01-24
      • 2020-08-23
      • 2022-08-06
      • 1970-01-01
      • 2017-09-01
      相关资源
      最近更新 更多