Vba: como remover o primeiro caractere de uma string
Você pode usar a seguinte sintaxe básica para remover o primeiro caractere de uma string usando VBA:
Sub RemoveFirstChar()
Dim i As Integer
Dim myString As String
For i = 2 To 11
myString = Range(" A " & i)
Range(" B " & i) = Right(myString, Len(myString) - 1)
Next i
End Sub
Este exemplo específico remove o primeiro caractere de cada string no intervalo A2:A11 e exibe os resultados no intervalo B2:B11 .
O exemplo a seguir mostra como usar essa sintaxe na prática.
Relacionado: Como remover o último caractere de uma string usando VBA
Exemplo: usando VBA para remover o primeiro caractere de strings
Suponha que temos a seguinte lista de nomes de times de basquete no Excel:
Digamos que queremos remover o primeiro caractere do nome de cada equipe.
Podemos criar a seguinte macro para fazer isso:
Sub RemoveFirstChar()
Dim i As Integer
Dim myString As String
For i = 2 To 11
myString = Range(" A " & i)
Range(" B " & i) = Right(myString, Len(myString) - 1)
Next i
End Sub
Quando executamos esta macro, recebemos a seguinte saída:
A coluna B exibe cada uma das strings na coluna A com o primeiro caractere removido.
Se você quiser remover os primeiros n caracteres de uma string, simplesmente substitua 1 no método Right por um número diferente.
Por exemplo, podemos criar a seguinte macro para remover os 2 primeiros caracteres de uma string:
Sub RemoveFirstTwoChar()
Dim i As Integer
Dim myString As String
For i = 2 To 11
myString = Range(" A " & i)
Range(" B " & i) = Left(myString, Len(myString) - 2)
Next i
End Sub
Quando executamos esta macro, recebemos a seguinte saída:
A coluna B exibe cada uma das strings na coluna A com os dois primeiros caracteres removidos.
Nota : Você pode encontrar a documentação completa do método VBA Right aqui .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns usando VBA:
VBA: Como contar ocorrências de caracteres em uma string
VBA: como verificar se uma string contém outra string
VBA: Como contar células com texto específico