como encontrar texto parcial no excel

1

Eu tenho duas colunas "A" & "B" A coluna "A" contém o texto completo (1000 itens de linha) & A coluna "B" contém texto parcial (250 itens de linha). Como posso encontrar & coloque todos os itens de linha de texto parcial (coluna B) em itens de linha de texto completo (coluna A) ou seus números de linha de frente nos quais o texto parcial está aparecendo.

**Column A**
Two Apples are Sweet
Three Apples are Bitter
Five Apples are Sour
Two Grapes are Sweet
Three Grapes are Bitter
Five Grapes are Sour
Two Chilies are Sweet
Three Chilies are Bitter
Five Chilies are Sour
**Column B**
Apple
Chili
Grapes

Obrigado por antecipar sua ajuda & Apoio, suporte. Saudações Anil

    
por Anil 24.02.2015 / 13:33

1 resposta

0

Se você quer dizer "Localizar todas as instâncias de 'Apple' e substituí-las por algo mais", sua melhor solução pode ser um script VBA curto, pois haveria 250 ações de localizar e substituir. No entanto, ainda não sabemos o que você quer substituir "Apple" por isso não podemos ir muito longe ainda. Se você tivesse os valores de substituição na coluna C , sua planilha de dados pode ser semelhante a este CSV:

Six Apples are Sweet,Apple,Monkey
Three Apples are Bitter,Chili,Elephant
Five Apples are Sour,Grapes,Cow
Six Grapes are Sweet,,
Three Grapes are Bitter,,
Five Grapes are Sour,,
Six Chilies are Sweet,,
Three Chilies are Bitter,,
Five Chilies are Sour,,

... Nesse caso, esse loop do VBA em todas as células da coluna B localizará o texto na coluna A e o substituirá pelo texto da coluna C .

Option Explicit
Sub replaceAllText()
    Dim r As Long
    Dim findString As String
    Dim replaceString As String
    With ActiveSheet
        For r = 1 To .UsedRange.Rows.Count
            findString = .Cells(r, 2)
            If LenB(findString) > 0 Then
                replaceString = .Cells(r, 3)
                .Columns("A:A").Replace What:=findString, Replacement:=replaceString, LookAt:=xlPart, _
                    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
                    ReplaceFormat:=False
            End If
        Next
    End With
End Sub

E lhe dê um resultado assim:

Six Monkeys are Sweet,Apple,Monkey
Three Monkeys are Bitter,Chili,Elephant
Five Monkeys are Sour,Grapes,Cow
Six Cow are Sweet,,
Three Cow are Bitter,,
Five Cow are Sour,,
Six Elephantes are Sweet,,
Three Elephantes are Bitter,,
Five Elephantes are Sour,,

    
por 24.02.2015 / 14:48