Objetivo: Demonstrar a criação de uma planilha para controle de projetos utilizando tabela dinâmica, Gantt, funções e formatação condicional avançada.
Conforme a Wikipedia "O diagrama de Gantt (ou mapa de Gantt) é um gráfico usado para ilustrar o avanço das diferentes etapas de um projeto. Os intervalos de tempo representando o início e fim de cada fase aparecem como barras coloridas sobre o eixo horizontal do gráfico. Desenvolvido em 1917 pelo engenheiro mecânico Henry Gantt, esse gráfico é utilizado como uma ferramenta de controle de produção. Nele podem ser visualizadas as tarefas de cada membro de uma equipe, bem como o tempo utilizado para cumpri-la. Assim, pode-se analisar o empenho de cada membro no grupo, desde que os mesmos sejam associados, à tarefa, como um recurso necessário ao desempenho da mesma." Há alguns modelos na internet aos quais me inspirei ideias para criar esta versão utilizando uma tabela dinâmica para manter de forma rápida um Gantt sempre atualizado e podendo tratar de várias dimensões de um ou mais projetos ao mesmo tempo. A vantagem de utilizar uma tabela dinâmica para criar o gráfico de Gantt é exatamente esta, criar a partir de uma tabela com os campos do projeto visões para controlar as tarefas dos recursos e enxergar mais de um projeto ao mesmo tempo, o que é principalmente útil quando os recursos são compartilhados entre projetos. Sendo assim vamos aos trabalhos, este exemplo é baseado na planilha para download deste artigo, sendo assim pode ser mais fácil trabalhando com ela. Primeiro crie uma lista de dados com os campos que quiser enxergar no seu diagrama de Gantt. Esta tabela ficará em uma planilha separada e servirá como base de dados para a tabela dinâmica. Crie a tabela dinâmica com as seguintes dimensões. Observação, caso você não tenha conhecimentos de como criar uma tabela dinâmica você pode aprender lendo este artigo: http://guiadoexcel.com.br/tabelas-dinamicas. Note que na imagem acima com as dimensões os campos de valores estão preenchidos com os campos Mínimo de Início e Máximo de Final sendo que estes campos estão assim para que a tabela dinâmica possua o valor mínimo e máximo de cada tarefa. Após criada a tabela dinâmica clique com o botão direito sobre um campo da coluna Tarefas e selecione a opção Opções de Tabela Dinâmica clique na aba Totais e Filtros e desmarque as opções Mostrar totais gerais das linhas e Mostrar totais gerais das colunas ainda nesta tela de opções clique sobre a aba Exibição e marque a opção Layout clássico de tabela dinâmica isso irá melhorar a visualização da tabela dinâmica em nossa planilha, clique em Ok e feche a janela de opções. Com o botão direito sobre a coluna de Tarefas da tabela dinâmica clique em Configurações de campo na guia Subtotais e Filtros clique em Nenhum e em Layout e Impressão deverá ficar marcado apenas a opção Mostrar rótulos de item no formato de tabela. A tabela dinâmica deverá ficar parecida com a imagem abaixo:
Na célula F3 digite a seguinte fórmula =MÍNIMO(Base!D:D), que trará a menor data inicial dos projetos.
Na célula E1 digite a f'unção =MÁXIMO(Base!E:E), que trará a maior data final dos projetos.
Em G3 digite =SEERRO(SE(F3+1<=$E$1;F3+1;"");"") que adicionará um dia para o intervalo entre a menor data dos projetos e a maior data dos projetos.
Arraste a fórmula acima até GK3
Desta forma você terá o seguinte resultado.
Agora já temos as datas e as tarefas da tabela dinâmica, seguindo temos que criar agora as formatações condicionais para a mesma.
Clique na guia Página Inicial e em Formatação Condicional e adicione as validações:
Selecione sempre a regra de formatação Usar uma fórmula para determinar quais células devem ser formatadas, para as formatações abaixo.
No campo para adicionar a função de validação digite =E(F$3>=$D4;F$3<=$E4;F$3<>""), clique em formatar e escolha uma cor ou um efeito de preenchimento, como foi o caso. Esta formatação irá preencher todos os campos da planilha aonde esta o campo data esteja entre a data inicial e final e seja diferente de vazio.
Após criar esta regra na tela de gerenciar regras altere o campo Aplica-se a para: =$F$4:$GK$1000, fazendo com que desta forma a formatação se estenda para estas células.
Adicione outra regra de formatação, desta vez para formatar uma linha acima e abaixo da célula que fizer parte do intervalo da planilha. Digite a função =E(F$3<>"";$E4<>""), que irá identificar se o campo de data está preenchido e também se a linha está preenchida na tabela dinâmica, delimitando assim o intervalo de formatação.
Crie uma nova regra de formatação aonde iremos formatar o delimitador lateral do diagrama de Gantt, com a seguinte fórmula =E(F$3<>"";G$3="";$E4<>"") aonde está sendo identificado se a coluna de data está preenchida, assim como se a próxima coluna de data está vazia e se a linha faz parte da tabela dinâmica. Assim é na formatação condicional selecione a barra vertical do lado direito para preencher este campo. [saiba_mais]
Agora crie a última regra, que irá identificar se o dia em questão é final de semana, e caso seja ele ficará formatado com outra cor. Para tanto adicione a função =E(F$3>=$D4;F$3<=$E4;F$3<>"";OU(DIA.DA.SEMANA(F$3)=1;DIA.DA.SEMANA(F$3)=7)) e selecione uma cor de formatação diferente para este intervalo.
Abaixo o resultado das validações criadas.
Desta forma temos uma planilha que ao adicionar novas tarefas o Gantt será dinâmico, se adaptando aos novos dados e permitindo análises com visões diferentes dos dados facilitadas pela tabela dinâmica.
Categorias Avançado, Gráfico, planilhas, Planilhas ProntasTags Automatização com VBA, Avançado, Excel 2007, Excel 2010, excel avançado, Exemplo Planilha, Planilha Profissional, planilhas prontas, truques, Tutoriais