Categorizando transações bancárias no Excel
Eu tenho uma lista exportada de transações bancárias no Excel, que gostaria de categorizar o mais rápido e simples possível. Eu suspeito que isso é possível apenas com fórmulas de matriz, mas uma função VBA seria igualmente útil.
O cenário
Meu cabeçalho de planilha é assim:
<code>| A | B | C | D | ========================================== | Date | Description | Amount | Category | ------------------------------------------ </code>
A data, a descrição e o valor vêm pré-preenchidos do meu banco. Eu preencho a categoria para cada transação na coluna D.
Isso é bom, mas consome tempo, porque cada categoria deve ser inserida individualmente e manualmente.
A necessidade
Quero que as categorias sejam preenchidas automaticamente em linhas nas quais não inseri uma categoria manual, com base em regras geradas e aplicadas dinamicamente.
A saída que eu quero se parece com isso:
<code>| A | B | C | D | E | F | ============================================================================== | Date | Description | Amount | Manual cat. | Rule | Auto cat. | ------------------------------------------------------------------------------ | 04/08/12 | Starbucks NYC | -$5.42 | Coffee | starbucks | Coffee | | 04/09/12 | Wal-Mart 468 | -$54.32 | Supermarket | wal-mart | Supermarket | | 04/10/12 | Starbucks SF | -$3.68 | | | Starbucks | </code>
Como você pode ver, eu digitei categorias 'manuais' na Coluna D. Sempre que eu fiz isso, eu inseri uma 'regra' de categorização na Coluna E. O Excel está então usando minhas entradas para preencher automaticamente a Coluna F,
A lógica é simples:
Onde eu insiro uma categoria manual, o Excel faz duas coisas:
Popula minha categoria manual na coluna F.Crie uma regra usando o texto inserido na coluna E.Onde o Excel se depara com uma descrição que contém texto usado em uma das minhas regras, ele preenche a categoria relevante na Coluna F.
O benefício
Isso tornaria muito simples reduzir a lista de transações, adicionando categorias e regras associadas. As transações sem uma categoria seriam preenchidas automaticamente quando uma regra se aplica e deixadas em branco quando uma regra não se aplica. As transações em que uma regra foi aplicada, dando a categoria errada, podem ser corrigidas e uma nova regra é fornecida.
Minha melhor tentativa até agora
Eu criei uma maneira de fazer isso usando apenas fórmulas, mas tem três desvantagens:
Isso exige a criação de tantas colunas quanto transações.Não há maneira conveniente de listar as categorias e regras associadas.Não há como alterar a ordem na qual as regras são aplicadas.