Página 1 de 1

Problemas ao calcular com o VLOOKUP

Enviado: 07 Fev 2017 às 21:00
por Leiman
Olá, Pessoal!
Tenho a seguinte tabela:
empregados - salario - novo salario
------------------------------------------------------
maria da silva 1.000
pedro americo 1.000
maria tereza 1.000
carlos silva 1.000
sonia maria 1.000
maria da silva 1.000

objetivo hipotético:
reajustar os salários em 10% de todas as pessoas que têm a palavra Maria no nome,
independente da posição da palavra, ou seja, posição início, meio ou fim.

usei esse código abaixo no vba excel:
-----------------------------------------------------------------------------------------------
Dim ultima_linha, i As Long
ultima_linha = Plan1.Range("A" & Rows.Count).End(xlUp).Row
Set intervalo = Range("a:b")
For i = 2 To ultima_linha
If Cells(i, 1) = (Application.WorksheetFunction.VLookup("*maria*", intervalo, 1, False)) Then
Cells(i, 3) = Cells(i, 2) + Cells(i, 2) * 0.1
End If
Next i
------------------------------------------------------------------------------------------------
acontece que esse código pega a primeira frase que contém a palavra maria e calcula somente aqueles
valores que possuem a mesma frase: Na tabela acima o código encontrou a palavra maria na frase maria da silva
e calcula todos os valores que contém apenas a frase maria da silva e as demais frases que contém a palavra maria, o
código não calcula. Alguém se anima com o desafio?

Abraços,
Claudio Leiman

Problemas ao calcular com o VLOOKUP

Enviado: 07 Fev 2017 às 21:17
por Reinaldo
Teste/experimente:
Código: Selecionar todos
Dim ultima_linha As Long, i As Long
ultima_linha = Plan1.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To ultima_linha
    If Cells(i, 1).Value Like "*maria*" Then
        Cells(i, 3) = Cells(i, 2) * 1.1
    End If
Next i
Obs.: A comparação e case sensitive, maria é diferente de Maria