Notifications
Clear all

Multiplicar Valor de acordo com celulas selecionadas

9 Posts
2 Usuários
0 Reactions
2,094 Visualizações
(@difaborges)
Posts: 9
Active Member
Topic starter
 

Prezados, boa tarde.

Estou precisando novamente do auxilio de vocês. Tenho uma planilha que tem que multiplicar o total de intens pelo seu valor se o campo status estiver como aprovado.

É o seguinte: Se o campo status estiver como aprovado a macro deve verificar na aba dados2 Qual time foi selecionado, qual cor da camisa, pegar a quantidade e multiplicar pelo campo preço da aba dados1 de acordo com os itens selecionados. O retorno pode ser em qualquer celula, e tem que ser o valor. Consegui fazer um codigo mas pegando apenas uma linha, não consegue pegar o intervalo todo para verificacao.

Obrigado pela ajuda.

Estou postando um modelo para tentar facilitar.

 
Postado : 03/07/2013 1:57 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Por favor leia as regras, os arquivos devem ser compactados!!
As Nossas Regras!
viewtopic.php?f=7&t=203

Você precisa realmente de VBA ou MAcro para isso, caso contrário seu tópico será movido para outro local!!

Att

 
Postado : 03/07/2013 3:20 pm
(@difaborges)
Posts: 9
Active Member
Topic starter
 

Realmente preciso de uma macro para realizar esta atividade.

 
Postado : 04/07/2013 8:31 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Desculpe, mas não entendi?.
Seu modelo não acrescenta muito, já que dados1 e 2 não tem dados para nortear. Porque procurar o time em dados2 e em dados1 qual célula/coluna (ou range a ser considerada)
Pode das um exemplo de como é e como deveria/espera que fique? Qual código fez?

 
Postado : 04/07/2013 10:05 am
(@difaborges)
Posts: 9
Active Member
Topic starter
 

Reinaldo, boa tarde.
Desculpe, o arquivo que enviei estava incompleto mesmo. O que acontece é que a aba Dados1 será oculta e as pessoas que utilizarem nao poderam ver o preço que esta definido. Estes usuarios so poderam escolher dados na aba Dados 2 e colocar a quantidade. o Gerente marcara a opção de aprovado e ai realizado a multiplicação da coluna quantidade com o preço e este valor será incluido em outra celula.

Segue o codigo que fiz. apesar de estar com dados diferente a logica e a mesma. O problema é que nao quero pegar apenas uma celula, como estou fazendo e sim pegar toda a coluna, pois o usuario pode preencher mais de uma coluna para aprovação do gerente.

Qualquer duvida, estou aqui.

Obrigado.

Sub Custo()

Dim j1 As String 'Fornecedor
Dim j2 As String '
Dim j3 As String ' Local
Dim j4 As String ' Conta
Dim j5 As String ' Serviço

Dim AbaPlanilha As String

j1 = Worksheets("Contas").Cells(5, 1).Value
j2 = Worksheets("Contas").Cells(6, 1).Value
j3 = Worksheets("Contas").Cells(5, 2).Value
j4 = Worksheets("Contas").Cells(5, 3).Value


    If j1 = "VETTA" And j3 = "OPERADORA" And j4 = "LEGADO" Then
        
    
        Worksheets("Contas").Cells(6, 1).Value = "te"
        
        Else
            MsgBox (Erro)
    End If
 
Postado : 04/07/2013 10:44 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Segue um exemplo utilizando-se formulas, para ver se atende (e se entendi) o que deseja

 
Postado : 05/07/2013 8:12 am
(@difaborges)
Posts: 9
Active Member
Topic starter
 

Reinaldo, bom dia.

Muito obrigado pela ajuda e por me mostrar uma forma diferente da que estava pensando para resolver meu problema. É sempre bom saber que as comunidades virtuais estão presentes para nos auxiliar.

Como vc me mostrou uma solução utilizando formula acredito que este post pode ser migrado para o espaço de formulas, mas não sei como faze-lo.

Sua solução me ajudou bastante, mas esta ocorrendo uma falha na hora de somar os valores, pois invés dele pegar a referencia da celula de acordo com os parametros definidos, eles sempre pega os valores das 3 primeiras linhas. Estou mandando uma planilha com o modelo, onde realizei vários testes e tentei resolver de várias formas mas sem sucesso.

Novamente gostaria de pedir o auxilio de vcs com este problema. Obrigado.

 
Postado : 12/07/2013 6:41 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Ops!
Altere a formula em Dados!H2, conforme abaixo e arraste para as demais e veja se atende.

=SE(Dados2!D2="Aprovado";DESLOC(INDIRETO("Dados1!A"&CORRESP(Dados2!$A2;Dados1!$A$1:$A$13;0)-1);CORRESP(Dados2!B2;INDIRETO("Dados1!B"&CORRESP(Dados2!$A2;Dados1!$A$1:$A$13;0)&":B"&CONT.SE(Dados1!$A$1:$A$13;Dados2!$A2)+CORRESP(Dados2!$A2;Dados1!$A$1:$A$13;0)-1);0);2)*Dados2!C2;0)
 
Postado : 12/07/2013 11:53 am
(@difaborges)
Posts: 9
Active Member
Topic starter
 

Reinaldo, você me ajudou demais. Quebrei a cabeça com esta formula e não sai do lugar. Muito obrigado pela ajuda.

 
Postado : 12/07/2013 1:19 pm