检查另一个单元格中是否存在单元格值

时间:2014-03-19 23:16:07

标签: excel vba excel-vba

对于误导性的标题感到抱歉,希望我的解释可以帮助您理解我想要的内容。

我有三列:

   A             B                  C
  SKU      media_gallery       image_paths
LNH222A                    +/JPEG/LNH222A-5.jpg
LNH222B                    +/JPEG/LNH222A-8-ROOM.jpg
                           +/JPEG/LNH222B-5.jpg
                           +/JPEG/LNH222B-6R.jpg 
                                  .... 

我想检查列A中的单元格值是否存在于列C的单元格值中,如果是,则将匹配列C单元格放入与匹配字符串平行的列B中。因此,如果{C}列中存在LNH222A,请获取匹配的单元格值并将其放入B列。

因此,在上面的示例中,单元格B2的值应为:

+/JPEG/LNH222A-5.jpg+/JPEG/LNH222A-8-ROOM.jpg

同样会发生LNH222B等等......

1 个答案:

答案 0 :(得分:1)

这假设您的数据从第2行开始:

Sub Adrift()
    Dim NA As Long, NC As Long, v As String, I As Long, J As Long
    Dim v2 As String
    NA = Cells(Rows.Count, "A").End(xlUp).Row
    NC = Cells(Rows.Count, "C").End(xlUp).Row
    For I = 2 To NA
        v = Cells(I, "A").Value
        v2 = ""
        For J = 2 To NC
            If InStr(Cells(J, "C").Value, v) > 0 Then
                v2 = v2 & ";" & Cells(J, "C").Value
            End If
        Next J
        Cells(I, "A").Offset(0, 1).Value = Mid(v2,2)
    Next I
End Sub
相关问题