Compare as células e as palavras de correspondência de cores

0

Eu tenho sentença na coluna A e tenho sentença na coluna B. Eu quero corresponder A1 e B1 e cor vermelha para as palavras que estão combinando. Por exemplo:

A1: Lenovo T450 with 5 GB RAM, Intel i5 CPU, 500 GB HDD, 14" HD screen, weight 3.5 pounds

B1: 5 GB  i5 CPU, 500 GB HDD, 14" HD 3.5 

Então eu quero colorir vermelho as palavras estão combinando com B1.

    
por Lokesh 07.11.2016 / 22:53

1 resposta

1

Refeito 9/2, códigos inúteis eliminados

Você pode tentar isso:

Sub sameStringRed()

Dim i As Integer, j As Integer, intStart As Integer
Dim rngA As Range, rngB As Range
Dim strDelimit As String: strDelimit = " "

For Each rngA In Selection.Rows
    Set rngB = rngA.Offset(0, 1)
    On Error GoTo Error
    strA = Split(rngA.Text, strDelimit)
    strB = Split(rngB.Text, strDelimit)
    For j = LBound(strA) To UBound(strA)
        For i = LBound(strB) To UBound(strB)
            If strA(j) = strB(i) Then
                intStart = InStr(1, UCase(rngA.Value), UCase(strB(i)))
                While intStart > 0
                    If Mid(rngA, intStart + Len(strB(i)), 1) = strDelimit Or Mid(rngA, intStart + Len(strB(i)), 1) = "" Then
                        rngA.Characters(Start:=intStart, Length:=Len(strB(i))).Font.ColorIndex = 3
                    End If
                    intStart = InStr(intStart + 1, UCase(rngA.Value), UCase(strB(i)))
                Wend
            End If
        Next i
    Next j
Next
Exit Sub
Error:
MsgBox "Please do not select multiple columns"
End Sub
    
por 08.11.2016 / 02:43