Encontre um texto específico dentro de um texto maior

0

Estou desenvolvendo um aplicativo de orçamento financeiro e fluxo de caixa pessoal no Excel 2016 no Windows 10 e preciso de ajuda para desenvolver um conjunto de fórmulas que:

  1. Extraia frases específicas - uma por vez, é claro - a partir de uma sequência de texto mais longa que corresponda ao título do rótulo de linha apropriado para esse tipo de transação.
  2. Subtotal de todas as transações semelhantes com base na descrição de rótulo para transação da linha correspondente para transações relacionadas.

Eu criei os "Line Labels" como forma de ajudar a vincular uma transação bancária à categoria apropriada de orçamento. A fonte dos meus dados é uma planilha de fluxo de caixa e transações baixadas (no formato XL) da minha instituição financeira. Veja alguns critérios que identifiquei com relação às descrições de transação do banco:

  1. A frase desejada varia em tamanho de acordo com o tipo de transação e com qual entidade a transação está.
  2. Todas as transações com uma entidade específica contêm a frase exata em algum lugar de toda a cadeia de texto.
  3. A string de identificação pode aparecer em qualquer lugar dentro da string de descrição (quase como se fosse aleatória).
  4. Nem todas as descrições de transação começam com os mesmos caracteres dos exemplos abaixo.
  5. Como a primeira letra de qualquer frase pode ser a primeira letra de uma frase separada, tentar usar FIND para identificar e categorizar várias transações pode levar a que transações diferentes sejam agrupadas e subtotadas incorretamente.

Veja alguns exemplos de algumas transações com suas descrições e os rótulos de linha correspondentes aos quais estou tentando corresponder as transações. Os dados confidenciais foram excluídos e o comprimento total das duas cadeias de descrição varia.

FORD MTR            Withdrawal ACH FORD MTR CHGO TYPE: ONLINE PMT ID: XXXXXXXXX

BANK OF AMERICA     Withdrawal ACH BANK OF AMERICA TYPE: ONLINE PMT ID: XXXXXXXXX

INFINITE ELECTRIC   Online Payment XXXXXXXXXX To INFINITE ELECTRIC

Se eu puder encontrar uma maneira de vincular transações semelhantes a seus rótulos de linha adequados, acredito que posso usar uma forma de SUMIF ou função semelhante para transações de subtotal para cada rótulo de linha na planilha de orçamento. Acho que já dei informações suficientes, mas… Se mais for necessário, por favor me avise. Muito obrigado antecipadamente.

    
por JoeDeal 18.02.2016 / 20:28

1 resposta

0

Talvez a solução mais elegante seja escrever uma função do VBA que aproveite a correspondência de padrões da Expressão Regular, para que você possa passar o valor do rótulo da linha e retornar o tipo de transação ou outros detalhes relevantes. Se você não estiver confortável com essa abordagem, ou preferir usar as fórmulas do Excel, poderá fazê-lo configurando colunas para cada tipo de transação que deseja analisar (Levantamentos, Pagamentos, Depósitos, Transferências, etc.). Então você terá que determinar quais dados você precisa analisar para cada um. Então você pode usar as fórmulas Texto do Excel (SEARCH, FIND, MID, etc.) para analisar o que você quer.

Por exemplo, se você quisesse analisar o nome da organização / entidade de uma transação do tipo Retirada , assumindo que a entidade sempre segue a palavra 'Retirada' no rótulo da linha, sua fórmula seria etiqueta em A10 ):

=IF(ISERR(SEARCH("Withdrawal",A10,1)),"",MID(A10,SEARCH("Withdrawal",A10,1)+LEN("Withdrawal")+1,FIND(":",A10,1)-LEN("Withdrawal")-2))

Fórmulas semelhantes podem ser usadas para analisar o ID do pagamento ou outros tipos de marcadores de linha.

    
por 18.02.2016 / 21:34