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.

questionAnswers(4)

yourAnswerToTheQuestion