在EXCEL中将两列与部分匹配对齐

时间:2016-06-14 10:25:17

标签: excel excel-vba excel-formula vba

嘿伙计们我正在尝试对齐具有相同部分值的两列(例如,最多9个第一个字符)。基本上,第二列中的一些电子邮件显示在第一列中。我想知道如何将第一列电子邮件与第二列匹配。谢谢 example

2 个答案:

答案 0 :(得分:1)

  

我想知道如何匹配第一列电子邮件到第二列。

尝试,

=match(a2&"*", b:b, 0)

答案 1 :(得分:0)

我确信您可以使用Excel公式执行此操作,但与此同时,这是一个VBA解决方案。按ALT + F11打开VBA编辑器,在左侧窗格中找到您的Excel文件,然后双击“此工作簿”。现在将此代码粘贴到:

    Option Explicit

Private Sub Match()

    Dim i As Long
    Dim sourceCell As String

    'Start at 2 if you have a header on row #1
    For i = 2 To ActiveSheet.UsedRange.Rows.Count

        '1 is the A column
        sourceCell = Cells(i, 1)

        '2 is the B column
        If Trim(sourceCell) = Left(Trim(Cells(i, 2)), Len(sourceCell)) Then

            Cells(i, 3).Value = "Match"

        End If

    Next i

End Sub

现在确保打开了正确的Excel工作表,然后再次从VBA编辑器中单击“运行” - >>运行子/用户表单。

注意 - 它将报告结果并覆盖“C”列中的所有数据。如果您需要更改它,只需将Cells(i,3)值从3更改为另一列。