Notifications
Clear all

PROCV VBA

7 Posts
1 Usuários
0 Reactions
1,931 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa Noite
Estou precisando fazer um procv via vba
Este exemplo até funciona em uma pequena planilha, tentei adapta-la na minha mas não funciona
Preciso colar os dados na coluna BU
Alguem pode ajudar

Ivair Pires

 
Postado : 12/07/2011 6:02 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite!!

Como você não explicou oque quer levar a coluna"BU"...

Tente esse exemplo..e faça uma adaptação.

Sub ProcMult()
For i = 2 To 100
For x = 2 To 100
Cells(i, "B").Value = Application.WorksheetFunction.VLookup(Cells(i, "A").Value, Sheets("PASTA").[A11], [K1].Value, 0) * _
Application.WorksheetFunction.VLookup(Cells(x, "A").Value, Sheets("Plan4").[J2], [K1].Value, 0)
Next x
Next i
End Sub

Att..

 
Postado : 13/07/2011 4:47 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde
Quero levar a coluna "D" de pasta VENDAS DIARIAS com o nome sum
Obrigado
at. estou tentando aqui mas ainda não funcionou

 
Postado : 14/07/2011 10:51 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Resumindo não funcionou

 
Postado : 14/07/2011 11:07 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Resumindo não funcionou

Ivair, primeiramente, indicar somente, "Resumindo não funcionou " não ajuda muito, o ideal era ter expecificado o que não funcionou, "se a rotina não localizou ou deu alguma mensagem de erro, e qual erro".

Mas, como gosto de desafios, resolvi dar uma olhada, então vamos as considerações :
A mesma não funciona pelo simples fato de em seu aplicativo a Aba em questão se chamar :
"VENDAS DIARIAS" e em sua rotina você especificou "VENDAS DIARIA" sem o "S", isto faz uma grande diferença.
Agora, corrigindo o nome, você terá os seguintes problemas :
1 ) Como na Coluna "CC" você tem Fórmulas, quando o dado procurado não existir, será retornado #N/D, e consequentemente resultando em erro no resultado.

2 ) Na Coluna "A" da Aba "PASTA" mais precisamente em "A1970" o valor inserido NÃO é NUMERICO e sim TEXTO e isto causará erro na rotina e abrirá a Janela do Depurador.

Não fiz mais testes para ver se tinha mais problemas, mas comece acertando os que citei e depois retorne se tiver mais algum problema.

[]s

 
Postado : 14/07/2011 5:38 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Bom dia
Muito obrigado vou dar uma olhada, e me desculpe pelo resumindo, posto depois os testes

até + pessoal
Ivair

 
Postado : 15/07/2011 5:20 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Funcionou legal agora
já adaptei outras rotinas que já tenho nelas ficou massa
obrigado novamente segue abaixo como ficou

Sub GerarVendas()
Dim item As Long
Dim lin As Long
Dim LLoop As Integer
Dim Lrows As Integer
Dim Percentual As Single ' var controlar barra de processo
'Rotina importar arquivo vendas diarias
Importa_Vendas
Sheets("PASTA").Select
'Linha inicial
lin = 11
LLoop = 3
Lrows = 2300
Do While 1
lin = lin + 1
item = Sheets("PASTA").Cells(lin, 1).Value
If item = 0 Then
Exit Do
Else
Sheets("PASTA").Cells(lin, 72) = Application.VLookup(item, Sheets("VENDAS DIARIAS").Range("A12:d3000"), 4, 0)
End If
' Cacular barra de processo
Percentual = LLoop / Lrows 'divide a quantidade feita pelo limite e a fração %
AtuaBarraVenda Percentual
LLoop = LLoop + 1
Loop
Sheets("PASTA").Select
'Função limpar N/D vendas não encontradas ou seja não houve vendas desse produto
'Rotinas para limpar os N/D
LimparND
'Fecho o formulario processando
frmPro_ImportaVendas.Hide
End Sub

 
Postado : 15/07/2011 6:05 am