InStrRev

Descrição:

A função InStrRev em VBA é uma ferramenta poderosa para manipulação de strings. Ela permite encontrar a última posição de uma substring dentro de uma string. Diferentemente da função InStr, que retorna a primeira ocorrência, o InStrRev busca a última ocorrência da substring na string. Isso é especialmente útil quando se precisa extrair informações específicas de um texto e a última instância é a relevante. Com o InStrRev, é possível criar algoritmos mais robustos e precisos para manipulação de dados de texto no Excel usando VBA.
Exemplos:


Sub Exemplo1()
    Dim posicao As Integer
    posicao = InStrRev("banana", "na")
    MsgBox "A última ocorrência de 'na' começa na posição " & posicao
End Sub
    

Neste exemplo, a função InStrRev é utilizada para encontrar a última posição da substring “na” na string “banana”. A posição é então exibida em uma mensagem.


Sub Exemplo2()
    Dim posicao As Integer
    posicao = InStrRev("abcdefg", "cde")
    MsgBox "A última ocorrência de 'cde' começa na posição " & posicao
End Sub
    

Neste exemplo, a função InStrRev é utilizada para encontrar a última posição da substring “cde” na string “abcdefg”. A posição é então exibida em uma mensagem.


Sub Exemplo3()
    Dim posicao As Integer
    posicao = InStrRev("abcdefg", "z")
    MsgBox "A última ocorrência de 'z' começa na posição " & posicao
End Sub
    

Neste exemplo, a função InStrRev é utilizada para encontrar a última posição da substring “z” na string “abcdefg”. Como a substring não é encontrada, a função retorna 0.


Sub Exemplo4()
    Dim posicao As Integer
    posicao = InStrRev("abcdefg", "a", 4)
    MsgBox "A última ocorrência de 'a' antes da posição 4 começa na posição " & posicao
End Sub
    

Neste exemplo, a função InStrRev é utilizada para encontrar a última posição da letra “a” na string “abcdefg”, considerando apenas os caracteres até a posição 4. A posição é então exibida em uma mensagem.


Sub Exemplo5()
    Dim posicao As Integer
    posicao = InStrRev("abcdefg", "b", , vbBinaryCompare)
    MsgBox "A última ocorrência de 'b' (comparação binária) começa na posição " & posicao
End Sub
    

Neste exemplo, a função InStrRev é utilizada para encontrar a última posição da letra “b” na string “abcdefg”, utilizando uma comparação binária. A posição é então exibida em uma mensagem.