São as expectativas definem como você se sente

No episódio 195 do Tim Ferriss Show, o empresário, desenvolvedor e piloto David Heinemeier Hansson conversou por quase quatro horas com Tim sobre diversos assuntos, mas um me chamou a atenção: expectativas.

David aprendeu a dirigir aos 25 anos de idade. Aos 32, ele já estava na França, disputando pela primeira vez as 24 Horas de Le Mans. Seu resultado, dentro da sua classe, foi a 7ª posição entre 20 participantes1. Ele se sentiu fantástico.

No ano seguinte, com dois pilotos de ponta e uma equipe que esperava vencer, David “amargou” uma segunda posição. Na temporada completa, também terminou em segundo. Sua sensação talvez seja melhor explicada pelo imortal Ayrton Senna: “O segundo nada mais é do que o primeiro dos perdedores.”

A diferença? Expectativas. Como ambos diagnosticaram, são as expectativas, e não os resultados, que ditam como você se sente sobre o assunto.

Reflita quais são as suas expectativas. Não na vida, nem no ano: mas para esta semana, para este dia. Você acha que nutri-las está fazendo bem a você? Que elas farão com que você realmente tenha resultados melhores? Você vai tirar notas melhores com elas? Venderá mais com elas? Ou elas só serão um peso morto que fará com que você não desfrute das vitórias que você conquistou?

David reduziu suas expectativas. Em 2014, foi campeão de Le Mans. Foi isso a causa da sua vitória? Claro que não. Mas em 2016, quando terminou em terceiro, ele estava contente.


  1. Nas 24 Horas de Le Mans, cada carro é conduzido por três pilotos, com um tempo mínimo e máximo atrás do volante. Nas categorias que David participa, é obrigatória a participação de ao menos um piloto amador por equipe, geralmente alguém rico que ajuda a financiar a equipe. David é geralmente esse cara, e ele é obrigado a cumprir um mínimo de 6 horas no volante. 

Três macros de uso diário para Excel

Quando as pessoas escutam “macro de Excel”, pensam em algo muito mais complicado do que realmente é. Sei disso, porque também pensava assim. Mas a complexidade das macros restringe-se à sua criação: copiar e colar uma delas da internet é muito simples. Com as instruções do meu último post, Trabalhando com macros no Excel moderno, você pode configurar e utilizar as macros abaixo.

A macro tem um poder inigualável no pacote Office de automatizar tarefas desnecessariamente complexas e reduzí-las a um clique do mouse. Talvez, para algumas pessoas, essas macros pareçam desnecessárias, pois elas são apenas formas mais simples de fazer uma tarefa que já é simples. Contudo, seu dia será mais produtivo com elas.

Redimensionar todas as colunas à mínima largura possível

A largura padrão de uma coluna no Excel é de 8,43 caracteres, geralmente muito curta para quase todos os propósitos. A seguinte macro permite que você faça em um comando o redimensionamento de todas as colunas, fazendo com que elas se adequem à largura do texto ou número mais largo de cada coluna:

Sub AutoRedimensionarTudo()
    Application.ScreenUpdating = False

    Dim wkSt As String
    Dim wkBk As Worksheet

    wkSt = ActiveSheet.Name

    For Each wkBk In ActiveWorkbook.Worksheets
        On Error Resume Next
        wkBk.Activate
        Cells.EntireColumn.AutoFit
    Next wkBk
    Sheets(wkSt).Select

    Application.ScreenUpdating = True

End Sub

Você pode seguir as instruções da Microsoft sobre como redimensionar colunas e linhas, mas a macro é mais rápida e mais conveniente na maioria dos casos, especialmente quando comparado com o que todo mundo faz: selecionar tudo e clicar duas vezes entre duas colunas. Com esse método popular, se você arrastar uma coluna para o lado sem querer, forçará aquela largura para todas as colunas da planilha inteira, o que as vezes pode significar um retrabalho para reajustar tudo que foi alterado.

Duplicar uma linha logo abaixo da sua cópia original

Eu criei essa macro porque estou no meu segundo emprego seguido onde preciso duplicar linhas diariamente. O processo normal, de selecionar uma linha inteira e usar a opção “Inserir células copiadas” funciona bem se você não estiver usando filtros. Contudo, se as linhas 66 a 79 estão filtradas e a última linha é a 530, tentar inserir algo na linha 80 pode fazer com que você crie a linha 531 sem querer.

Portanto:

Sub DuplicarLinha()
    ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
    ActiveCell.EntireRow.Copy
    ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteValues
    Application.CutCopyMode = False
End Sub

O método mais comum de duplicar linhas, que expliquei acima, pode ser contornado fazendo a classificação dos dados na ordem adequada — presumindo, claro, que estejam em uma ordem alfabética ou numérica para começo de conversa. Mesmo que esteja, a macro é mais rápida e mais conveniente na maior parte dos casos.

Copiar a soma de várias células para poder colar em outra célula ou programa

Essa é mais complexa para configurar, mas vale a pena.

O primeiro passo é encontrar um arquivo chamado FM20.DLL no seu PC. Eu encontrei no meu em C:\Program Files (x86)\Microsoft Office\root\vfs\SystemX86, mas isso depende da sua instalação do Excel.

Depois disso, você deve ir no Excel, abrir o Microsof Visual Basic for Applications Editor através da combinação de teclas Alt+F11. Com ele aberto, abra o menu “Ferramentas” e escolha a opção “Referências”. Você deve chegar nesta tela:

Caixa de diálogo para adicionar Referências no VBA do Excel.
Clique no botão “Procurar” e, logo em seguida, encontre esse arquivo FM20.DLL. O Microsoft Forms 2.0 Object Library deve ser adicionado à lista de referências.

Uma vez que ele esteja adicionado, você pode utilizar a seguinte macro para copiar a soma dos valores das células que você selecionar:

Sub SomarParaCopiar()
    Dim theData As New DataObject
    theData.SetText Format(Application.WorksheetFunction.Sum(Selection))
    theData.PutInClipboard
End Sub

Trabalhando com macros no Excel moderno

Macros permitem que você automatize soluções para problemas que exigiriam trabalho manual no Excel. Minha intenção é documentar aqui no Metódico algumas macros que eu utilizo, para referência futura. Contudo, para que um leitor consiga utilizá-las, precisará de algumas instruções, que pretendo dar neste post.

Essas dicas devem servir para qualquer Excel da versão 2007 em diante no Windows.

A pasta pessoal de macros

O primeiro passo é habilitar a pasta pessoal de macros. Existem dois conjuntos de instruções para seguir na documentação oficial da Microsoft que explicam perfeitamente o processo:

Desse momento em diante, você só precisará usar as teclas Alt+F11 no Excel para abrir o Microsoft Visual Basic For Applications, onde você irá incluir, modificar e excluir macros daqui por diante. Lembre-se: é no Módulo1 do arquivo PERSONAL.XLSB.

A documentação de como copiar macros de um computador para o outro pode ser encontrada aqui para Excel 2007 e 2010 e aqui para Excel 2013 e 2016.

Salvando a primeira macro

Uma macro de uso comum é a de tornar todas as letras de uma célula em maiúsculas. Metódico viraria METÓDICO com o seu uso. A macro é esta:

Sub ConverterParaMaiusculas()
   For Each Cell In Selection
      If Not Cell.HasFormula Then
         Cell.Value = UCase(Cell.Value)
   End If
   Next Cell
End Sub

Abra seu editor com Alt+F11. Cole a macro acima no editor, dentro do Módulo1 do VBAProject (PERSONAL.XLSB). Ele deve parecer com a imagem abaixo. Não esqueça de salvar após colar a macro.

Editor de macros do Excel 2016 com uma macro para transformar todas as letras de uma célula em maíusculas

Usando macros

Existem várias maneiras de executar uma macro no Excel. Os seguintes artigos da Microsoft explicam para cada uma das versões modernas do Excel:

O meu método favorito é executar uma macro clicando em um botão na barra de ferramentas de acesso rápido, eventualmente utilizando a combinação de teclas Alt+F8 para exibir a lista de macros. A imagem abaixo mostra essa tela. Basta clicar no botão “Executar” para que a macro seja usada na célula que você desejar. Se mais de uma célula for selecionada, todo texto será transformado em letras maiúsculas.

Caixa de diálogo para executar e editar macros no Excel 2016

Repense o que você acha que controla

Pessoas como eu, que moram a uma hora do seu local de trabalho, não tem controle de verdade sobre quando elas chegarão no trabalho.

Contudo, quase todas estão em pleno controle do horário em que sairão de casa.

Poucas pessoas são abençoadas com a habilidade de dormir na hora que desejam. A maior parte gostaria de não sofrer de crises de insônia, enquanto outras gostariam de resistir mais ao chamado de Morfeu.

Contudo, quase todas estão em pleno controle do horário que vão às suas camas.

É um bom exercício revisar a sua lista de compromissos e definir sobre quais dos itens que a compoem você realmente tem algum controle. Desapegue-se daqueles que você não controla e seja disciplinado para seguir aqueles que você está no comando. Se você se sente deprimido ou ansioso por ficar quebrando compromissos a todo momento, esse simples exercício pode lhe recobrar um pouco do seu orgulho e confiança.

SaaS e backups

Problemas em Software as a Service (SaaS), como no Wunderlist hoje, provam como ainda é crucial uma cópia offline de informações críticas ao seu trabalho. Quatro horas, no meio do expediente de trabalho de uma quarta-feira, sem a sua lista de tarefas? Em 2016? Inconcebível.

Sempre procure sincronizar os dados do seu SaaS de alguma forma offline. O SaaS que eu trabalho tem uma maneira de sincronizar via Dropbox o grosso das informações, mas se você esquecer de deixar o Dropbox rodando, pode estar com informações defasadas. Gmail? Sempre bom ter um backup no Outlook, a extensão de Gmail Offline ou algo parecido, para consultá-lo fora do ar.

Esteja sempre precavido para evitar perda de produtividade e vendas. Não apenas com as coisas físicas, mas também com as digitais.