Ir para conteúdo
  • 0
Kar

VB SUM+CASE

Pergunta

Estou tentando colocar pra rodar uma macro com a função SUM + CASE, mas está dando erro.
A ideia é que apareça na célula C6 da Plan5 a soma das horas da empregada Adriana referentes ao mês de janeiro que estão cadastradas na Plan4.
Na Plan4 tem dados de várias pessoas juntos, o CASE seria para encontrar aqueles da Adriana e os que foram cadastrados com alguma data do mês de janeiro. A partir disso somar as horas referentes aos dados encontrados.

Deixei a linha do jeito mais fácil pra vocês entenderem o que quero:

Sub relatorio()
    Plan5.Range("C6").ClearContents
    ultimaLinha = Plan4.Cells(Rows.Count, "A").End(xlUp).Row
    For i = 3 To ultimaLinha
          
Plan5.Range("C6").Formula = SUM(CASE WHEN Plan4.Cells(i, 1) = "ADRIANA" And Month(Plan4.Cells(i, 2)) = 1 THEN SUM(Plan4.Cells(i, 5)) END)
    Next
End Sub

  

Eu até tentei usar o somases, mas como a planilha estará vazia e será preenchida ao longo do ano, não sei qual o conjunto de células colocar na fórmula.

Por isso achei melhor fazer a macro pesquisar qual a última linha preenchida e fazer o cálculo só dessas linhas. 

Alguém pode me ajudar?!?!?!?!

Compartilhar este post


Link para o post
Compartilhar em outros sites

1 resposta a esta questão

Recommended Posts

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por felipegon02
      Gostaria da ajuda de vocês membros, estou fazendo um projeto que é pro meu TCC utilizando o MYSQL  e o Visual Basic, neste projeto queria fazer agendamento de clientes, mas para isso, queria comparar o horário selecionado pelo cliente com o banco de dados, para ver se o horário está disponível mas não sei com fazer isso. Obrigado 
    • Por felipegon02
      Gostaria da ajuda de vocês membros, estou fazendo um projeto que é pro meu TCC utilizando o MYSQL  e o Visual Basic, neste projeto queria fazer agendamento de clientes, mas para isso, queria comparar o horário selecionado pelo cliente com o banco de dados, para ver se o horário está disponível mas não sei com fazer isso. Obrigado 
    • Por Gabriel Maciel
      Olá, pessoal!
      Tenho um banco de dados no excel com mais de 800 emails, e estou precisando desenvolver um programa ou página web que pegue todos esses emails e eu possa enviar uma mesma mensagem para todos... imagino que posso fazer isso com php (no caso de uma página web), mas não tenho certeza como. Me ajudem por favor, tenho até dia 8 desse mês pra resolver isso 
      Obrigado a todos!!
    • Por Igor Luque
      Olá amigos, boa noite
      Estava eu querendo fazer um app para meu "trampo" de formatação de pc's, só para que quando a pessoa dona do pc o ligasse um app aparecesse em sua tela automaticamente junto com o windows, e depois de fechado ele seria apagado ou apenas ignorado, mas não sei como fazer para ele iniciar uma única vez com o pc e após fechado n se abrir mais, pq é chato o cliente ligar o pc e toda hora aparecer aquilo: se fosse possível ainda criar um timer que após determinada vez que o pc iniciasse ele entrava  com o app e depois de fechado ele sumia. Sei que pode parecer difícl kkkkkk mas me ajudaria mto se alguém pudesse disponibilizar sua inteligência cmg, Obrigado
    • Por Nelson Pereira
      Bom dia pessoal, estou necessitado de ajuda.

      Estou usando um relatório no meu sistema que está vinculado a um dataset. No meu relatório tenho 3 campos que passo a explicar: "PreçoGrupo" ; "PreçoTotal" ; "PercTotal".

      O "PreçoGrupo" é alimentado por um valor do meu dataset (PRECstRp), que no relatório já está configurado para ir buscar o custo dos produtos por Grupo. e o campo "PreçoTotal" também é alimentado pelo (PRECstRp) que por sua vez está configurado no relatório para ser a soma de todos os grupos.... até aqui tudo bem..o meu problema vem a segui, com o campo "PercTotal'', que tem de ser alimentado com a seguinte formula ( "PreçoGrupo" / "PreçoTotal" ) * 100...isto para cada linha do relatório, pois cada linha corresponde a um grupo diferente de produtos.



      Porém os valores de "PercTotal'' não estão batendo certo.



      Alguém me pode ajudar a ver se estou alimentado as variavies de forma correta?

      Estou usando o segiinte: 
       
      Dim CustoGrupo As Double Dim CustoTotal As Double For Each row As DataRow In ds.Tables("Dados2").Rows row("TotalGrupo") = CDbl(row("PRECstRp")) row("TotalGeral") = CDbl(row("PRECstRp")) CustoGrupo += CDbl(row("TotalGrupo")) CustoTotal += CDbl(row("TotalGeral")) If CustoGrupo > 0 Then row("PercTotal") = (CustoGrupo / CustoTotal) * 100 Else row("PercTotal") = 0 End If Next Return ds  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.