Propósito

✔ Programação GLOBAL® - Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog devem ser tratados como consultoria freelance. Queiram contatar-nos: brazilsalesforceeffectiveness@gmail.com | ESTE BLOG NÃO SE RESPONSABILIZA POR QUAISQUER DANOS PROVENIENTES DO USO DOS CÓDIGOS AQUI POSTADOS EM APLICAÇÕES PESSOAIS OU DE TERCEIROS.

Transformando Datas em Formatos Legíveis: A Função VBA Que Você Precisa Conhecer!

Transformando Datas em Formatos Legíveis: A Função VBA Que Você Precisa Conhecer!


No universo do desenvolvimento em VBA (Visual Basic for Applications), trabalhar com datas pode ser um desafio. Nem sempre os dados vêm no formato que gostaríamos, especialmente quando estamos lidando com strings que incluem informações complexas como períodos de tempo. É exatamente aí que uma função VBA personalizada para formatar períodos de datas pode se tornar um verdadeiro divisor de águas. 


Neste artigo, vamos explorar a importância de uma função que transforma strings de datas em formatos legíveis e padronizados, suas possibilidades de uso e como ela pode otimizar o trabalho de desenvolvedores que lidam com automações.


Function FormatarPeriodo2(inputString As String) As String

    ' Desenvolvido em: 08.06.2024 - 09:30:28

    ' Author: André Luiz Bernardes

    ' Aplicação: Transforma uma string num formato mais legível.

    

    Dim startYear As String, startMonth As String

    Dim endYear As String, endMonth As String

    Dim meses As Variant

    Dim startPos As Integer, endPos As Integer

    Dim periodos() As String

    

    ' Define o array com os nomes dos meses abreviados

    Let meses = Array("Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez")

    

    ' Localiza a posição onde começa o período "(De " e termina o período ")"

    Let startPos = InStr(inputString, "(De ")

    Let endPos = InStr(inputString, ")")

    

    ' Extrai somente a parte relevante da string

    Let inputString = Mid(inputString, startPos + 4, endPos - startPos - 4)

    

    ' Divide a string em início e fim

    Let periodos = Split(inputString, " a ")

    

    ' Divide cada período em ano e mês

    Let startYear = Left(periodos(0), 2) '"20" & Left(periodos(0), 2)  ' Adiciona "20" para transformar em ano de 4 dígitos

    Let startMonth = meses(CInt(Right(periodos(0), 2)) - 1)  ' Converte o número do mês para nome abreviado

    

    Let endYear = Left(periodos(1), 2) '"20" & Left(periodos(1), 2)  ' Adiciona "20" para transformar em ano de 4 dígitos

    Let endMonth = meses(CInt(Right(periodos(1), 2)) - 1)  ' Converte o número do mês para nome abreviado

    

    ' Retorna o resultado formatado

    Let FormatarPeriodo2 = startMonth & "|" & startYear & " - " & endMonth & "|" & endYear

End Function


Uma das maiores vantagens de criar uma função personalizada em VBA é a flexibilidade que ela oferece. Em vez de depender de formatos fixos ou de funções nativas limitadas, você pode adaptar a função para reconhecer diferentes prefixos e formatos de datas. A função discutida neste artigo, por exemplo, é capaz de converter strings como "MAT ANTERIOR: (De 2112 a 2211)" em algo muito mais compreensível, como "Dec/2021 - Nov/2022". Isso não apenas melhora a legibilidade, mas também facilita a análise e manipulação dos dados.


Essa função é especialmente útil em cenários corporativos onde relatórios periódicos precisam ser gerados automaticamente. Imagine um dashboard que exibe períodos financeiros ou ciclos de projetos. Com a função certa em VBA, você pode garantir que esses períodos sejam apresentados de maneira consistente e clara, independentemente do formato original dos dados. Isso pode economizar horas de trabalho manual e reduzir o risco de erros de interpretação.


Outro benefício importante é a escalabilidade. À medida que os dados mudam ou novos formatos de strings de datas são introduzidos, a função pode ser facilmente ajustada para acomodar essas mudanças. Isso significa que sua solução VBA continua relevante e eficaz mesmo em um ambiente dinâmico, onde os requisitos podem mudar rapidamente. Para desenvolvedores, essa é uma maneira poderosa de agregar valor a projetos de automação, garantindo que o código permaneça útil a longo prazo.


A função também pode ser utilizada em conjunto com outras automações VBA para realizar tarefas complexas. Por exemplo, você pode combiná-la com funções de envio de e-mails, geração de relatórios em PDF ou atualização de bancos de dados. O resultado final é uma solução integrada que transforma dados brutos em informações significativas, entregando insights valiosos para os usuários finais.


Além disso, trabalhar com uma função VBA como essa é uma excelente oportunidade para desenvolvedores aprimorarem suas habilidades em manipulação de strings e datas. Essas habilidades são altamente demandadas no mercado, especialmente em áreas que envolvem automação de processos e análise de dados. Portanto, dominar essa técnica pode abrir portas para novos projetos e oportunidades profissionais.


Por fim, é importante destacar que funções personalizadas em VBA como essa são ótimas para padronizar processos. Em vez de confiar na entrada manual de dados ou em soluções temporárias, você implementa um método consistente que pode ser reutilizado em diversos cenários. Isso gera confiança nos resultados apresentados e contribui para um fluxo de trabalho mais eficiente e profissional.


 Clique aqui e nos contate via What's App para avaliarmos seus projetos 

Comente e compartilhe este artigo!

brazilsalesforceeffectiveness@gmail.com

 Série Donut Project 
DONUT PROJECT: VBA - Projetos e Códigos de Visual Basic for Applications (Visual Basic For Apllication)eBook - DONUT PROJECT 2024 - Volume 03 - Funções Financeiras - André Luiz Bernardes eBook - DONUT PROJECT 2024 - Volume 02 - Conectando Banco de Dados - André Luiz Bernardes eBook - DONUT PROJECT 2024 - Volume 01 - André Luiz Bernardes


 Clique nas capas abaixo e compre também: 

DONUT PROJECT: VBA - Projetos e Códigos de Visual Basic for Applications (Visual Basic For Apllication)


Série Top 10 Funções: Top 10 Funções VBA para o Microsoft Excel (Série Top 10 Funções - Microsoft Excel)


eBook - DONUT PROJECT 2024 - Volume 03 - Funções Financeiras - André Luiz Bernardes

eBook - DONUT PROJECT 2024 - Volume 02 - Conectando Banco de Dados - André Luiz Bernardes

eBook - DONUT PROJECT 2024 - Volume 01 - André Luiz Bernardes

Nenhum comentário:

Postar um comentário

diHITT - Notícias