Excel – 4 décadas e a apatia dos programadores

Parabéns para o Excel! 40 aninhos de puro glamour, vindo da autosoma, passando pelos assistentes como o Clippy, gráficos instantâneos, tabelas dinâmicas, ribbon, script lab, etc., etc., etc… 40 anos, talvez mais velho que você, meu caro “internauta”.

Clippy, saudades, mas nem tanto
Clippy, saudades, mas nem tanto

Poucas ferramentas chegaram perto de habilitar o usuário de computador a produzir de forma tão otimizada quanto o Excel. Sim, estou falando do mercado corporativo, já que eu nem recomendaria que você pagasse uma licença de Excel só pra fazer sua lista de compras.

O Excel é [insira seu palavrão aumentativo preferido aqui] demais!

Mas… há um público específico que difere frontalmente desta perspectiva. Como faço parte deste grupo (sem compartilhar da opinião), neste texto, tomo a iniciativa de declarar o quão impopular é essa prática e como esse público poderia se beneficiar do seu uso.

Os programadores odeiam Excel

Ouso dizer que este é quase um axioma. Todo programador que conheci em quase todos os times os quais participei, expressavam um sentimento similar. Se havia exceções, elas eram sempre associadas aos que eram ou mais experientes ou próximas de analistas de negócios ou gerentes de projetos. Afinal, quem escapa de um bom relatório feito em Excel?

Passei muito tempo tentando entender o motivo da repúdia. Por um breve período, culpei o VBA. Para programadores de linguagens modernas (qualquer coisa orientada a objetos), o VBA é quase um insulto. Esse fenômeno tem explicação, que espero ficar mais claro mais tarde neste mesmo texto.

A conclusão foi a seguinte:

Excel não é para programadores (?)

Um gerente de projetos uma vez compartilhou um pensamento que fez sentido, e como bônus, ele também havia programado no passado.

Programadores têm um grande problema: eles não entendem ferramentas que não compilam.

Bem, o Excel não compila (esqueça o VBA por enquanto). Se alguma coisa não dá uma resposta positiva do tipo “sucesso”, o programador se sente perdido. Admito que esta é uma super simplificação de um problema maior, mas resume bem.

Ao abrir um Excel, o programador vê um grid, um dos controles mais poderosos e complexos na categoria interface de usuário. E isso é tudo o que eles veem. E é aqui que a oportunidade se perde. Se um analista de dados abre o Excel, ele vê um mundo de oportunidades. Uma célula é quase um universo em si se ela tiver acesso aos dados certos.

Ok, o sistema de fórmulas não é um Python (esqueça a fórmula PY por enquanto), mas se houver algo próximo de um “low-code” de sucesso, aqui está ele! E de quebra, é traduzido para uma quantidade quase obscena de idiomas, coisa que nenhuma linguagem de programação conseguiu.

Me faz pensar se o sucesso do Excel é o que incomoda, mas duvido desta premissa. Programadores são criaturas que, por dominarem certos conceitos de computação, sentem-se como os engenheiros do mundo moderno, e falam de cada programa como um mecânico fala do motor do seu carro, ou como um investidor de ações fala de como você está perdendo dinheiro na poupança, ou o nutricionista chato que diz que tudo o que você come engorda, ou o maromba da academia que diz que você está treinando errado, etc.

Acho que neste ponto o problema ficou claro.

O que o Excel consegue é ser simples para usuários não especialistas em computação, coisa que muitos programas que eles criam não conseguiram: criar um programa de sucesso.

O Excel forma programadores

Já tinha uma ideia parecida, mas tive uma epifania quando ouvi a opinião deste camarada:

Future of vibe coding | DHH and Lex Fridman (em inglês)

Este é apenas um corte e o assunto em questão é vibe coding, coisa que nem vou comentar aqui. Lá pelo minuto 2:30, ele faz uma referência ao processo de formação de um programador, mas também elucida como contadores, engenheiros, e outras profissões que processam dados conseguem através da ferramenta progredir naturalmente para a competência de produzir micro aplicativos, que é o caso do Excel.

Lembra quando falei sobre o trauma que programadores têm do Excel por causa do VBA? Pois então, é disto que estou falando. Contadores, engenheiros, advogados, analistas, todos têm acesso ao Excel e, quando rompem o limite do interesse, eles “progridem” para o VBA, criando um universo de “coisinhas” que basicamente sustentam muitos negócios. Com isso, todo tipo de microaplicação é possível, e ela não precisa de uma cara bonita, nem de um processo de distribuição complexo, o Excel já dá isso pra ela.

Esse potencial é o que a Microsoft não conseguiu substituir até hoje. Não tem PowerApps que consiga chegar perto. O usuário abre o Excel, adiciona algumas fórmulas, quando não é mais suficiente, abre o VBA e o céu é o limite. Lembre-se que o VBA pode chamar APIs do Windows diretamente.

Mas é aqui que está o pulo do gato. Se algumas das profissões citadas acima criaram um monstrinho em VBA e nunca mais voltaram para consertar, outros simplesmente se apaixonaram pelo trabalho e acabaram migrando para a profissão.

E nisto, eu me encaixo.

Saber Excel te faz um programador/profissional melhor

Para mim, tudo começou com o VBA. Admito que HTML e CSS tinham vindo um pouco antes, mas como a web ainda engatinhava, na minha rotina de analista o VBA fazia muito mais sentido já que o Excel era parte da minha rotina.

Daí, vieram as oportunidades, micro-aplicativos, gerenciadores de tudo o que possa imaginar, tudo cliente-servidor, etc., etc. Não muito mais tarde, já tinha decidido que minha carreira seria computação, software de preferência.

20 anos depois, mesmo tendo passado por papéis de liderança e arquitetura de software moderna (leia-se nuvem), o Excel me acompanha em praticamente todos os times em que trabalhei. Seja via algum tipo de extração ou manipulação de dados, relatório, ou mesmo automação, não era raro que alguns planilhas deixassem membros do time boquiabertos, por mais medianas que fossem. As situações eram muitas, de integrações com ferramentas, manipulação de arquivos, tudo. Web scraping então…

Um caso recente fez com que fosse destaque em uma das apresentações para o cliente, tudo por causa de uma UDF/macro + formatação condicional. Nas semanas seguintes, as mensagens no Teams não paravam pedindo ajuda para fazer algo parecido, mesmo um simples PROCV.

Logo depois, tarefas mais graciosas foram solicitadas, tudo porque este que vos fala podia automatizar coisas que vinham no Excel, enquanto outros membros da equipe, programadores ou não, mal passavam do autofiltro. Cheguei a ser chamado de “exército de um homem só”, ao qual respondi “bem que eu podia ser pago pelo trabalho de um exército”. (espero que meu gerente não esteja lendo isto [= )

Mas qual foi a diferença? Eu tinha em minhas mãos acesso a ferramentas muito mais poderosas, linguagens de alto nível, SQL Server, etc.

A diferença é que o Excel está aí, sempre esteve, e estará na máquina do estagiário e do CEO da empresa, e, se você for cuidadoso, seu bom trabalho vai acabar sendo visto pelo simples fato de sua solução ter sido empacotada num .xlsx.

O futuro

É verdade que boa parte das automações vem substituindo o que o Excel faria anteriormente, e por vezes ele nem entra mais na jogada. Mas o fato é que, tem muita, muita coisa para automatizar, e provavelmente haverá mais no futuro. Quando isso acontecer, o Excel estará lá para ou proporcionar ou auxiliar no processo de criação, teste e depuração da mesma.

Incluo nisto todo o barulho sendo feito pela IA, só para ficar claro.

Concluindo

Este é apenas um relato, o qual exponho de forma a você, caro leitor, tirar suas conclusões. Em meu ver, saber Excel, independentemente da sua posição no trabalho, desde que ela envolva passar boa parte do tempo na frente da tela do Windows, só te trará vantagens, se é que não vai mudar o rumo da sua carreira, como fez com a minha, e faz até hoje.

Valeu por tudo, Excel. 40 anos. Quem venham mais 101000!

O autor, que escreveu este texto sem a ajuda de nenhum GPT da vida, apesar de saber que eles o usarão para seu treinamento sem pedir permissão.

Não se apegue ao seu código. Se apegue aos seus testes

Faz um tempo que não falo de programação. O que atiçou a vontade de escrever de novo sobre o assunto é, pra variar, a liberdade que as redes sociais deram para que muitos pudessem falar a respeito de tudo, só pelo esporte de falar.

Dessa bagunça toda, algumas “máximas” têm sido criadas sobre o meio e, a que dá o título deste post tem me incomodado recentemente, apesar de já ter respondido sobre isso.

O motivo é, eu gosto do que faço, e sim, eu me apaixono pelo meu código, e muito. Gosto do que ele faz, do resultado que ele gera. Como não ficar feliz quando todos os seus testes retornarem “Success” depois de enviar sua versão para o build automatizado? Até mesmo antes disso, quando você roda os testes localmente.

Sim, eu gosto do meu código, mas gosto mais ainda quando ele funciona. E funcionar significa, pelo menos para mim (e recomendo que para você), que ele passa nos testes.

Permita-me caro leitor conduzi-lo de forma resumida pelo processo de amadurecimento pelo qual passei, que me fez chegar no ponto da carreira em que estou.

Como comecei a gostar do meu código

Já criei bastante código (afinal são mais de 20 anos programando), menos do que deveria, sendo honesto. Sou o tipo de programador que gosta de matutar o problema, colocar no “papel” antes mesmo de escrever uma linha de código. Esse é meu “normal”. Era melhor ainda quando isso era feito em equipe, onde todos discutiam o mesmo problema numa sala enquanto rabiscávamos o quadro.

Em um momento, seja por pressão de projetos, seja porque outros profissionais usam uma abordagem diferente, seja por outra máxima, a de “errar rápido para corrigir rápido”, senti a pressão de codificar o quanto antes. Isso foi para mim, um erro. Comecei a criar muito código, código é trabalho, e trabalho tem valor. Mesmo que tivesse criado uma monstruosidade, tinha apego por ela, afinal, era minha criação, uma obra de arte.

Depois de muito ver minha arte causar dores de cabeça para mim e para outros do time, achei melhor mudar a forma de encarar meu trabalho.

Como comecei a desgostar/desapegar do meu código

O subtítulo é drástico, mas é mais ou menos o que acontece. O que mudou de fato foi o seguinte: TESTES!

Você aprende isso na aula de programação, mas esquece no minuto seguinte.

Se pudesse dar uma recomendação para qualquer programador em qualquer idade, seria o seguinte: Apegue-se a seus testes! É a parte mais importante do seu projeto. É a garantia de que seu código, bonito ou feio, curto ou longo, siga padrões de código ou não (deveria, mas esse é assunto para outro post), funcionará. Muito mais do que simplesmente compilar, o importante é que seu código faça o que ele deveria.

Se você trabalha numa linguagem moderna, ela provavelmente disponibiliza um mecanismo de testes, comumente unitários. Use-o, abuse dele. Nenhum profissional que conheço e que utiliza testes hoje se arrepende. Os que não usam, ficam na categoria dos que “ainda não entenderam”. Isso não vem de mim, mas dos grandes nomes da programação (Robert Martin, Martin Fowler, Dave Farley, entre outros).

Quando você se acostumar com o fato de que trabalho feito significa seu código passar nos testes, será o ponto em que você terá se desapegado dele.

Boa sorte e sucesso!

Excel – Contar valores únicos em 2025+

Este é um truque “antigo”. Direto ao assunto, quando se quer uma lista de valores únicos no Excel, usamos o seguinte:

  • Selecionar a coluna(s) das que ser os valores sem repetição.
  • Na Aba Dados, clicar na opção remover duplicadas:

Direto, simples, e funciona com até várias colunas selecionadas. Essa abordagem, para mim, tem alguns problemas:

  • O resultado é aplicado diretamente, ou seja, isso vai alterar seus dados, o que é invasivo. A alternativa é copiar somente os dados de interesse para outra planilha e fazer a contagem, o que é aceitável para tabelas de dados pequenas.
  • É um trabalhão caso você queira, por exemplo, apenas saber a contagem de itens unicos (é possível com fórmula matriciais, mas a sintaxe é um terror).

Mas o Excel é uma mãe e não nos deixa mão. Com a adição de fórmulas dinâmicas, o feito pode ser feito da seguinte maneira.

Vou usar esta fonte de dados: https://pt.wikipedia.org/wiki/Lista_de_munic%C3%ADpios_do_Brasil_por_popula%C3%A7%C3%A3o_(2022)

Supondo que os dados estejam na coluna D, para obter a lista de estados (Unidade Federativa), faça o seguinte:

Em qualquer célula a direita dos dados, digite a seguinte fórmula:

=ÚNICO(D2:D5571)

O resultado:

Já temos a lista de valores únicos com um mínimo de cliques. Agora, ao objetivo principal deste post, para contar a quantidade de valores únicos, bastaria atualizar a fórmula para o seguinte:

=CONT.VALORES(ÚNICO(D2:D5571))

Mais simples que isso, só perguntando para o Copilot (ops…).

Forte abraço!

IA pra todo lado, mas e aí?

No fim de 2024, postei este vídeo:

É longo (18 min, uma aberração nos dias de hoje). Nele me posiciono superficialmente sobre essa maluquice toda de Inteligência Artificial, IA daqui para frente para facilitar.

Minha opinião não mudou muito, apenas amadureceu. O que foi dito está dito. O que fiz depois do lançamento do ChatGPT e outros é entender o papel dele e de tecnologias análogas, as ditas generativas, para então saber o que fazer. A pergunta que vou tentar responder (e provavelmente falharei) é:

Como profissional de tecnologia, o que faço para me manter atualizado num mundo dominado por IA?

Gosto de me basear em bons exemplos. A definição de “bom exemplo” é assunto para outro artigo, mas vou usar a citação abaixo:

Nixon foi à China, em 1972, e perguntou ao primeiro-ministro Chu Enlai sobre o impacto da Revolução Francesa. A resposta? “É muito cedo para dizer.”
Fonte: dê um google

Isso em 1972 sendo que a Revolução Francesa acabou em 1799. E sim, acredito que essa forçada de barra de introduzir IA em tudo se compara a qualquer momento definidor na história, pelo menos em contexto tecnólogico, como foram o computador pessoal, a internet e então, redes sociais.

Resumindo, estamos tão entusiasmados com o que podemos fazer que não paramos para pensar se devíamos.

Significa que o melhor é esperar para ver o que acontece? Prefiro pensar que o preferível é não tirar conclusões precipitadas.  Tudo ainda está tomando forma. Não é preciso pensar muito para atestar isso. Veja o cenário 2 anos atrás, então 1 ano, e agora. Tivemos uma avalanche de produtos AI-based que viraram pó, promessas não cumpridas aos montes, tudo para fazer o público mais interessado, no caso, investidores,  manterem seu suado dinheirinho financiando tais iniciativas.

Enquanto somos inundados com tanto blábláblá, entenda o seguinte sobre IA:

  • Nos dias de hoje, ela é nada mais que Aprendizado de Máquina (Machine Learning, ML) com uma nova roupa, rebranded para quem é hipster.
  • ML está aí desde os tempos em que eu fiz faculdade (e tem um tempão).
  • ML tem sido entregue a nós todos os dias, tem muito tempo. Quer exemplos?
    • Google Maps/Waze.
    • Google Lens.
    • Auto-completar de código da maioria das IDEs (Visual Studio, JetBrains).
    • Corretores ortográficos.
  • Qualquer feed de rede social para fazer micro alcance de anúncios para você.
  • Avanços em áreas acadêmicas como micro biologia e genética (não entendo muito, mas tenho parentes diretos que estão na área)
  • Todo o avanço geológico, drones, etc.

O “segredo”, que é segredo algum, é ter um mínimo de base sobre o que roda dentro do capô da IA para melhor julgar o impacto que cada notícia que sai a cada segundo nos portais de tecnologia e redes sociais.

O manter-se atualizado não é consumir tudo o que aparece. Antes disso, refine seu filtro do que está acontecendo para saber investir no que fará a diferença para você enquanto profissional.

E antes de você colocar “AI expert” ou “AI first” no seu perfil do LinkedIn, aqui vai minha suave opinião sobre tudo isso:

Pouco vai mudar no curto prazo. IAs generativas servem só pra gerar ruído e manter a corrida maluca das grandes marcas para ver qual delas ficará com a medalha do “eu fiz primeiro”.

Se você estiver usando IA no seu trabalho (ChatGPT, Gemini, Grok, DeepSeek), você está certo se ela estiver te ajudando, e não fazendo o trabalho por você.

Se seu trabalho pode ser feito por uma IA generativa, procure outro tipo emprego, pra ontem!

Pense no cenário ideal como você sendo o Tony Stark e o seu assistente de IA o Jarvis (Friday nos filmes mais atuais, nerds entenderão). Jarvis faz o trabalho sujo e demorado, mas a genialidade é vem do Tony. Ele é a alavanca pra fazer com que um trabalho level minutos ou invés de anos, por exemplo, simulação de resultados.

E, sendo bem sincero, estamos bem longe disso, mas longe nos dias de hoje pode significar anos, meses, ou até semanas.

Veremos.

Carinhosamente,

O autor, movido por inteligência natural, muito café, google, e talvez um só um pouquinho de gemini.