como dividir caractere e dígito no excel?

2

Na verdade, quero dividir o personagem & dígitos em uma mesma célula, no Excel 2010

Meu celular é assim: test03ok
Outra célula poderia ser: 34test

Eu quero dividir os números das letras, então minha saída desejada dos dois exemplos acima seria

teste 03 ok
34 teste

Isso pode ser feito no Excel sem o VBa ou eu tenho que usar o VBa?

    
por Freeman 16.08.2013 / 09:14

1 resposta

1

Aqui está uma função baseada em regex que deve fazer o truque. Cole-o em um módulo padrão que você inseriu no menu do editor do VBA. Você pode acessar o editor clicando em Visual Basic na guia Developer da faixa de opções. Em seguida, escolha Inserir - > Módulo padrão no menu.

Você também precisará definir uma referência à biblioteca Microsoft VBScript Regular Expressions 5.5 . Para fazer isso, clique em Ferramentas - > Referências no menu do editor. Role para baixo para encontrar a listagem e marque-a para definir a referência.

Especialistas em regex gostariam de melhorar o padrão que usei. Ele insere espaços extras em algumas cadeias de caracteres, com as quais eu me livrei ao usar a função TRIM da planilha.

Function ReNSpace(text As String)
    Dim regex As New RegExp
    regex.Pattern = "(?:(\D+)?(\d+))|(?:(\D+)(\d+)?)"
    regex.Global = True
    regex.IgnoreCase = True
    ' Test if a match is found
    If regex.Test(text) = True Then
        ReNSpace = WorksheetFunction.Trim(regex.Replace(text, "$1 $2 $3 $4"))
    Else
        ReNSpace = CVErr(xlErrValue)
    End If
    Set regex = Nothing
End Function
    
por 17.08.2013 / 07:05