Logo Hardware.com.br
EricVGLopes
EricVGLopes Novo Membro Registrado
8 Mensagens 3 Curtidas

[Resolvido] Dúvida - Excel: como somar valores de uma lista de múltipla seleção

#1 Por EricVGLopes 04/01/2021 - 16:32
Saudações, pessoal!
Sou novo por aqui e gostaria de saber se algum de vocês poderia me ajudar.
A partir de dados obtidos em uma planilha anexa, contendo uma relação de "Cursos" e a "Carga (h)" correspondente, gostaria de criar, em uma planilha de controle de atividades realizadas por aluno, uma lista de múltipla seleção, para que, escolhidos os cursos que cada um deles realizou, em uma célula ao lado fossem somados os valores de sua respectiva carga horária. Vou tentar ilustrar, para ficar mais fácil de compreender:
  • Coluna A: nome do aluno;
  • Coluna B: cursos por ele realizados (a partir de uma lista de múltipla seleção, com dados obtidos em uma outra planilha, da mesma pasta de trabalho);
  • Coluna C: somatória da carga horária dos cursos realizados (a partir do valor correspondente, da planilha em comento).

Não sei se ficou bem claro; em caso negativo, posso esclarecer eventuais dúvidas. De todo modo, penso que - ao menos em relação ao meu pouco conhecimento em Excel, na comparação com especialistas daqui do fórum - se trata de algo relativamente simples de se resolver.
Desde já, agradeço imensamente pelo precioso auxílio!
Grande abraço
EricVGLopes
EricVGLopes Novo Membro Registrado
8 Mensagens 3 Curtidas
#3 Por EricVGLopes
05/01/2021 - 17:02
Você tem razão, P@tropi, perdoe-me pela confusão. A bem da verdade, não havia reparado que havia essa opção (de anexar arquivos), ao criar o tópico. De toda forma, já lhe agradeço, de antemão, pela receptividade e a disposição em me auxiliar.
Como sugerido, anexo a este comentário o arquivo de uma planilha exemplificativa, com descrições pormenorizadas do que desejo que seja feito em cada campo, a partir da descrição inicial. Conto com seu apoio, bem como da comunidade, para me ajudar em relação à demanda.

Um forte abraço!

Eric

---

P@tropi disse:
Boa noite @EricVGLopes

Seja bem-vindo ao fórum!

Dúvidas de Excel, sem anexar uma planilha, demonstrando manualmente o resultado esperado, dificilmente algum colaborador irá ajudar.

Ajude a ser ajudado.

[]s

Anexos

EricVGLopes
EricVGLopes Novo Membro Registrado
8 Mensagens 3 Curtidas
#5 Por EricVGLopes
07/01/2021 - 11:18
deciog disse:
EricVGLopes, Bom Dia.

Confere se é desta forma que desejas

Decio



@deciog , agradeço imensamente por seu desprendimento e sua preciosa ajuda!
O que eu gostaria, porém, é de poder selecionar mais de um curso na coluna B, e que na coluna C fosse feita a soma da carga horária correspondente, a partir dessa seleção. Seria desejável que a escolha fosse feita em uma janela à parte (formulário VB?) para cada aluno, acessível por meio de um botão onde todas essas opções aparecessem. Ocorre que eu entendo quase nada de programação e simplesmente não tenho a menor ideia de como fazer isso. Você poderia me auxiliar?
Um grande abrço!
EricVGLopes
EricVGLopes Novo Membro Registrado
8 Mensagens 3 Curtidas
#7 Por EricVGLopes
07/01/2021 - 13:20
deciog disse:
Obrigado pelo feedback

Eu não sei programar com Macro somente formulas

Abraços e feliz ano novo

Decio



Sem problemas, @deciog ! Ainda assim, agradeço pela iniciativa do contato.
Como é descrito na própria planilha, as ideias do que pretendo permanecem em aberto. Caso não encontre ajuda por aqui, vou ter que buscar alternativas. Você tem alguma sugestão sobre como eu poderia fazer esse controle (múltipla seleção de itens em uma lista, com somatória correspondente em uma célula ao lado), sem necessariamente me valer de macros e VB?
P@tropi
P@tropi Highlander Registrado
3.4K Mensagens 2.6K Curtidas
#8 Por P@tropi
07/01/2021 - 19:56
Boa noite, @EriVGLopes

O que você quer não é possível realizar com formulas nativas do Excel.
O Excel foi criado para fazer cálculos, relatórios e gráficos, mas em cima de dados tabulados numa planilha em forma de banco de dados.
Se você tivesse uma planilha com o Nome do aluno, cursos realizados, datas, etc., poderia retornar relatórios como cursos realizados no período tal, cursos que fulano fez, etc...., mas com essa estrutura da tua planilha, só com programação em VBA e ainda assim complicado.

[]s
Se foi útil, clique em Curtir.
Devemos combater o Comunismo ou qualquer doutrina totalitária.
EricVGLopes
EricVGLopes Novo Membro Registrado
8 Mensagens 3 Curtidas
#9 Por EricVGLopes
11/01/2021 - 09:13
P@tropi disse:
Boa noite, @EriVGLopes

O que você quer não é possível realizar com formulas nativas do Excel.
O Excel foi criado para fazer cálculos, relatórios e gráficos, mas em cima de dados tabulados numa planilha em forma de banco de dados.
Se você tivesse uma planilha com o Nome do aluno, cursos realizados, datas, etc., poderia retornar relatórios como cursos realizados no período tal, cursos que fulano fez, etc...., mas com essa estrutura da tua planilha, só com programação em VBA e ainda assim complicado.

[]s



Bom dia, @P@tropi!

Seus esclarecimentos me foram bastante oportunos. De fato, já supunha que fazer o que eu pretendia era impossível, mas não tinha como confirmar isso até ouvir alguém que entende muito mais de Excel do que eu. A partir do seu comentário, redirecionei minha estratégia e comecei a buscar alternativas, pensando em algo mais simples, por ora.
Muito obrigado, de toda forma, por sua prestatividade e seu precioso apoio!

Um grande abraço,

Eric
EricVGLopes
EricVGLopes Novo Membro Registrado
8 Mensagens 3 Curtidas
#11 Por EricVGLopes
11/01/2021 - 11:05
EdsonBR disse:
Bom dia e bem vindo ao fórum, @EricVGLopes !

Veja se esta alternativa anexa usando VBA lhe ajuda...

Para usar, selecione qualquer célula no intervalo amarelo.



@EdsonBR, era EXATAMENTE isso do que eu precisava! Fiquei surpreso com sua habilidade em me responder, em tão pouco tempo, com tamanha precisão. Não tenho palavras para lhe agradecer por isso, você realmente não faz ideia do quanto terá me ajudado! Vou dar baixa no tópico, marcando a demanda como [Resolvida].
Um grande abraço, sucesso em sua jornada, espero que um dia seja devidamente recompensado por essa inestimável colaboração!
Eric

EdsonBR disse:
Bom dia e bem vindo ao fórum, @EricVGLopes !

Veja se esta alternativa anexa usando VBA lhe ajuda...

Para usar, selecione qualquer célula no intervalo amarelo.



Estimado @EdsonBR, pedindo-lhe desculpas pelo abuso de sua generosa disponibilidade, gostaria de saber se poderia me ajudar, ainda, em mais alguns detalhes em relação à planilha (a qual envio no anexo, com as respectivas adaptações ao quadro final de que necessitarei, na prática), a saber:
[LIST=1]
na janela de formulário que abre quando clico nas células da coluna C, dada a enorme quantidade, não são exibidas todas as opções de curso. É possível diagramá-las em mais de uma coluna e/ou criar barras de rolagem para inteira visualização das opções, na janela?
é possível memorizar as escolhas dos cursos (coluna C) para que as caixas de seleção já apareçam marcadas, ao clicar novamente sobre as opções de curso para cada aprendiz?
[/LIST]
Caso algo não tenha ficado claro, avise-me, por favor. Mais uma vez, agradeço-lhe imensamente por sua ajuda, (esta sim) de valor incalculável!

Um grande abraço!

Anexos

EdsonBR
EdsonBR Veterano Registrado
273 Mensagens 280 Curtidas
#12 Por EdsonBR
12/01/2021 - 10:39
Confira agora, @EricVGLopes

Obs.: transferi as rotinas para detecção de célula selecionada e alterada para atuar em nível de Workbook. Assim não precisará copiar a macro para todas as planilhas da pasta de trabalho Excel. Será suficiente que as seleções/alterações ocorram em planilhas cujos nomes sejam de Jan a Dez e no intervalo considerado (C5:C300).

Anexos

EricVGLopes
EricVGLopes Novo Membro Registrado
8 Mensagens 3 Curtidas
#13 Por EricVGLopes
12/01/2021 - 10:50
EdsonBR disse:
Confira agora, @EricVGLopes

Obs.: transferi as rotinas para detecção de célula selecionada e alterada para atuar em nível de Workbook. Assim não precisará copiar a macro para todas as planilhas da pasta de trabalho Excel. Será suficiente que as seleções/alterações ocorram em planilhas cujos nomes sejam de Jan a Dez e no intervalo considerado (C5:C300).


@EdsonBR , por favor, me permita esse elogio, você é fenomenal! Não faz ideia do quanto foi capaz de me ajudar! Fiquei extremamente satisfeito com o resultado da solicitação - era, mais uma vez, exatamente aquilo de que precisava!
Por pessoas como você, passarei a utilizar mais seguidamente este fórum e recomendar a meus amigos.
Muito - mas muito mesmo! - obrigado pela colaboração! Renovo os desejos de sucesso em sua jornada, com a merecida recompensa por contribuições tão importantes, como essa!

Um grande abraço!

PS: caso eu deseje retornar àquela visualização de um curso por linha (coluna C), tal como você havia apresentado na primeira vez, como devo proceder?
EdsonBR
EdsonBR Veterano Registrado
273 Mensagens 280 Curtidas
#14 Por EdsonBR
12/01/2021 - 11:41
Obrigado pela consideração e pela já rara educação, @EricVGLopes !

EricVGLopes disse:
...caso eu deseje retornar àquela visualização de um curso por linha (coluna C), ...como devo proceder?


No procedimento btnConcluir_Click() altere a linha abaixo. De:
      .Value = Join(cursosRealiz, ", &quot


Para:
      .Value = Join(cursosRealiz, vbLf)


E no UserForm_Initialize() altere de:
  If ActiveCell.Value <> vbNullString Then cAtual = Split(ActiveCell.Value, ", &quot


Para:
  If ActiveCell.Value <> vbNullString Then cAtual = Split(ActiveCell.Value, vbLf)
EricVGLopes
EricVGLopes Novo Membro Registrado
8 Mensagens 3 Curtidas
#15 Por EricVGLopes
12/01/2021 - 11:56
EdsonBR disse:
Obrigado pela consideração e pela já rara educação, @EricVGLopes !



No procedimento btnConcluir_Click() altere a linha abaixo. De:
      .Value = Join(cursosRealiz, ", &quot


Para:
      .Value = Join(cursosRealiz, vbLf)


E no UserForm_Initialize() altere de:
  If ActiveCell.Value <> vbNullString Then cAtual = Split(ActiveCell.Value, ", &quot


Para:
  If ActiveCell.Value <> vbNullString Then cAtual = Split(ActiveCell.Value, vbLf)



Deu certo, @EdsonBR , acabo de testar aqui! Ficou perfeita assim! Já estou encaminhando a versão final para minha esposa, responsável pelo uso da planilha. Estou confiante de que isso a ajudará a ter um ano mais tranquilo, na realização de uma tarefa que lhe era tão árdua. Não tenho como lhe expressar a alegria, por isso, depois de tanto tempo em que ela vem me pedindo ajuda.
Prometo que o deixarei em paz, a partir de agora! rs
Um fortíssimo abraço e obrigado por tudo, mais uma vez!
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal