Notifications
Clear all

Preenchendo célula com VBA

7 Posts
2 Usuários
0 Reactions
1,549 Visualizações
(@alexandroferreira)
Posts: 11
Active Member
Topic starter
 

Pessoal,

Estou desenvolvendo uma planilha de carregamento e tenho a seguinte dúvida: É possível carregar uma determiada célula através de critério feito em VBA?

O problema é o seguinte: tenho a célula B5 que irá guardar a quantidade de venda de um produto, caso essa quantidade seja diferente de zero a célula D5 será o valor da célula B5 multiplicado por 2. Ou seja, se o valor da célula B5 fou 4 o valor da célula D5 será 10. Até aí tudo bem, mas o problema é que se a quantidade do produto da célula B5 for igual a zero o valor da célula D5 terá que ser digitado (aí é que complica, pois não posso criar fórmula na célula D5, pois caso eu digite qualquer valor nela a fórmula apagará). Alguém pode me ajudar nisso?

Grato,

Alexandro

 
Postado : 15/09/2012 6:17 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!
Olá seja bem vindo, Alexandro!!!

Por favor Leia os links abaixo, obrigado!!!....Anexe seu arquivo modelo, COMPACTADO!!!

Nossas Regras
viewtopic.php?f=7&t=203

Marcar Tópico como Resolvido e Agradecimento
viewtopic.php?f=7&t=3784
Lembre se de usar nossa base de dados (Pesquisa) e a Biblioteca

Como Anexar Aquivos Compactados
viewtopic.php?f=7&t=3841

Abrir Novo Tópico
viewtopic.php?f=7&t=5317
Att ;)

 
Postado : 15/09/2012 6:21 am
(@alexandroferreira)
Posts: 11
Active Member
Topic starter
 

Pessoal, segue planilha anexada.

Eu preciso que ao inserir um valor na célula C6 (BOI QTD>) o mesmo seja multiplicado por 2 na célula G6 (DIANTEIRO). Até aí tudo bem, porém, se nenhum valor for inserido na célula C eu possa inserir um valor manualmente na célula G6. Não posso usar fórmula na célula G6 devido a essa entrada de valor manualmente, sendo assim, é possível criar esse critério no VBA?

Grato desde já,

Alexandro.

 
Postado : 15/09/2012 10:31 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Experimente:
Copie o codigo abaixo e cole na folha de codigo da pLan2
(ALt=F11 para abrir o editor VB) selecione Plan2(Plan2) com dois clicks e cole o codigo

Private Sub Worksheet_Change(ByVal Target As Range)
'By Reinaldo
Target.Select
Application.ScreenUpdating = False
If Not Intersect(Target, Range("C6:C20")) Is Nothing Then
Cells(Target.Row, "G") = Target.Value * 2
End If
Application.ScreenUpdating = True
End Sub
 
Postado : 15/09/2012 12:15 pm
(@alexandroferreira)
Posts: 11
Active Member
Topic starter
 

Reinaldo,

Obrigado pela ajuda. Funcionou perfeitamente. Tentei mudar o seu código para que que a células I e K ficassem com o mesmo critério, mas não consegui. Alterei a linha: Cells(Target.Row, "G";"I";"K") = Target.Value * 2 Porém deu erro.

Abraço.

 
Postado : 15/09/2012 3:44 pm
(@alexandroferreira)
Posts: 11
Active Member
Topic starter
 

Consegui. Copiei a linha e mudei a coluna. Valeu!!!

 
Postado : 15/09/2012 4:33 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Lembre se de marcar sua postagem como resolvida!!

Att

 
Postado : 15/09/2012 4:48 pm