Excel planiha vba procv buscando dados e formulas

Sex, 15 de Abril de 2011 19:39 Expedito Marcondes
Imprimir

Saberexcel - o site das macros

Essas duas macros do Aplicativo Microsoft Excel VBA(Visual Basic Application), estão equipadas com a WorksheetFunction.vlookup, onde uma retorna os valores de busca personalizada com Fórmula e Sem Fórmulas.

Prezado Sr. Marcondes, sou um iniciante em VBA e estou lutando com uma fórmula PROCV que funciona "à escala" (ou seja, puxando manualmente), mas não consigo fazer essa função trabalhar gostaria de saber como? fazer, somente com o macros, com o código (mesmo com WorksheetFunction.VlooKup etc.) Não consigo a resposta!!, ninguém me responde. São duas tabelas, peço-lhe que se puder ajudar-me a entender a WorksheetFunction.Vlookup . Ficaria muito agradecido, não consegui.  Sei que o Senhor conhece muito e poderá ajudar-me com a minha intenção,
Agradecido, Antonio (Ptb)

-ACONSELHO A DAR UMA OLHADINHA NA MATÉRIA SOBRE AS 34O WORKSHEETFUNCTIONS -VBA -
340 PLANIHAS WorksheetFunction funções de planilhas retornam valores vba

Antonio, vamos aos Macros já prontos e resolvidos. Ok. abaixo baixe o exemplo de planilha para visualizar os resultados obtidos.

Sub Procv_inserir_sem_formula()
Dim sb As Double, UltimaLinha As Double, i As Double
UltimaLinha = Sheets("Volumes").Range("A" & Rows.Count).End(xlUp).Row
Dim vOperador As Variant

With Sheets("Volumes")
For i = 2 To UltimaLinha
vOperador = WorksheetFunction.VLookup(.Cells(i, 1), Range("AREA"), 5, False)
.Cells(i, 5) = vOperador
Next i
End With

End Sub

Sub Procv_inserir_com_formula()
Dim C As Range

With Saber2
Set C = .Range("E2:E" & .Range("A65000").End(xlUp).Row)
End With

With C
.Formula = "=INDEX('SubContratados'!E:E,MATCH(A2,'SubContratados'!A:A,0))"
'.Value = .Value ' usa-se essa linha de código para que seja repassado os valores e apagado as fórmulas
End With

End Sub


Antonio, observe que abaixo fiz um sistema para auxiliar a quem precisa no teste, esse macro localizará a última linha usada
e limpará todas as linhas deixando-as em branco pra um nova realização do teste. Ok...

Sub Limpar_teste()
Dim C As Range

With Saber2
Set C = .Range("E2:E" & .Range("A65000").End(xlUp).Row)
End With

With C
.Value = ""
End With

End Sub




Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), ), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel



Baixe o exemplo de planiha com os macros acima
Excel planilha vba procv buscando dados e formulas (299.33 KB)



Publicidade
Compre com segurança, garantia e ótimos preços
Eletrônicos - Submarino.com.br

Tags:
Última atualização em Dom, 14 de Agosto de 2011 12:47