APAGAR OS 2 PRIMEIROS NÊMEROS DE UMA SEQUÊNCIA

ZAMARIOLI 14/09/2016 21:02:51
#466936
Boa noite, estou desenvolvendo uma planilha em VBA e não estou conseguindo encontrar um código capaz de excluir os 2 primeiros números de uma sequencia numérica.
O desafio está no fato de que existem várias sequencias em colunas de forma que os números variam entre si.
por exemplo:
23654789
18745286
35487765
99024153
No caso, preciso apagar apenas os 2 primeiros números de cada célula na coluna.
se alguém puder me ajudar, desde já agradeço.
ASHKATCHUP 14/09/2016 22:24:02
#466944
Resposta escolhida
Boa noite.

Isso precisa ser feito através de uma Sub. Não é possível alterar o valor de uma célula usando uma Function.

Eu fiz um exemplo. A Sub ExcluiDigitos recebe um range como parâmetro e a quantidade de dígitos a serem excluídos, da esquerda para direita.

  Sub Botão1_Clique()
Dim wb As Workbook
Dim ws As Worksheet
Dim rg As range
[ô]
Set wb = ActiveWorkbook
Set ws = ActiveSheet
Set rg = ws.range([Ô]A1[Ô], [Ô]A99[Ô])
[ô]
ExcluiDigitos rg, 2
End Sub

Public Sub ExcluiDigitos(objRange As range, qntDigitos As Integer)
Dim objCell As range
[ô]
For Each objCell In objRange.Cells
If Trim(objCell.Value) <> [Ô][Ô] And Len(CStr(objCell.Value)) > qntDigitos Then
objCell.Value = Mid(objCell.Value, qntDigitos + 1)
End If
Next
[ô]
Exit Sub
[ô]
End Sub
ZAMARIOLI 26/09/2016 23:51:29
#467567
Maravilha... me ajudou bastante. grande abraço.
Tópico encerrado , respostas não são mais permitidas