Notifications
Clear all

Formula para Divisão de Caracter

12 Posts
5 Usuários
0 Reactions
1,857 Visualizações
(@rdj500)
Posts: 5
Active Member
Topic starter
 

Pessoal, bom dia.

Eu tenho uma planilha com as seguintes descrições:

L1-L5, L7, L8

E preciso dividir estas informações e ficar da seuinte maneira: L1, L2, L3, L4, L5, L7, L8. Ou seja, onde existe o caracter - "traço" tem que contar até o numero final desta informação, como aconteceu de 1 até 5.

Alguem sabe se existe alguma formula no Excel para isso?

Obs.: Estas informações estão na mesma célula.

Att,

Robert

 
Postado : 14/09/2016 6:00 am
deciog
(@deciog)
Posts: 0
Trusted Member
 

rdj500

É sempre melhor postar um modelo de planilha para que possamos fazer a formula correta, não podemos chutar formulas sem ver o que tem.

Décio

Marque o tópico como Resolvido se foi solucionado seu problema.
Brasil, São Paulo - SP
Décio Gassi

 
Postado : 14/09/2016 6:22 am
(@rdj500)
Posts: 5
Active Member
Topic starter
 

Décio, bom dia.

Você tem razão!!!

Segue anexo arquivo.

Obrigado

 
Postado : 14/09/2016 6:43 am
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

Sem ver sua planilha encontrei a seguinte solução.

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 14/09/2016 6:53 am
(@rdj500)
Posts: 5
Active Member
Topic starter
 

Décio,

Não consegui abrir a formula!! Está com erro na minha máquina.

Qual foi a formula que você utilizou?

 
Postado : 14/09/2016 7:04 am
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

O Décio não enviou fórmula...

{=UNIRTEXTO(", ";;"L"&LIN(INDIRETO(SUBSTITUIR(EXT.TEXTO(A3;LOCALIZAR("-";A3)-2;LOCALIZAR("-";A3)+2);"-";":"))))&EXT.TEXTO(A3;LOCALIZAR(",";A3);100)}

mas não vai funcionar p/ a sua tabela.

Qual sua versão do Excel?

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 14/09/2016 7:48 am
(@rdj500)
Posts: 5
Active Member
Topic starter
 

DJunqueira, bom dia

Excel 2007!

 
Postado : 14/09/2016 7:56 am
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Rdj500, seja bem vindo!

Quanto à sua problemática, pensei numa solucionática usando a informática :D .

No modelo anexo, numa macro fiz uma udf usando Regex (Expressões Regulares) para expandir sua listagem. Confira e dê retorno, ok?

 
Postado : 15/09/2016 5:53 am
deciog
(@deciog)
Posts: 0
Trusted Member
 

rdj500, Bom Dia.

Tem como colocar todos os resultados esperados na coluna G, para não ter duvidas

Décio

Marque o tópico como Resolvido se foi solucionado seu problema.
Brasil, São Paulo - SP
Décio Gassi

 
Postado : 15/09/2016 6:22 am
(@rdj500)
Posts: 5
Active Member
Topic starter
 

EdsonBR, boa tarde.

Perfeito!!!!
Tem como me mandar a macro para eu expandir em outras planilhas? Tentei verificar na View Macro mas não encontrei.

 
Postado : 15/09/2016 2:06 pm
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

rdj500, boa tarde.

A macro está aberta, abra o editor do Visual Basic usando Alt+F11, ela está no módulo "FórumPlanilhando", chama-se "Function ExpandeLista" (na verdade é uma Function e não uma Sub, por isso ela não aparece no "Exibir Macros").
De qualquer forma, aí vai ela:

Function ExpandeLista(ByVal texto As String) As String
   Dim regex As Object, cjMt As Object
   Dim strTemp As String
   Dim i As Integer, menor As Integer, maior As Integer
   Set regex = CreateObject("vbScript.Regexp")
   With regex
    .Global = False: .IgnoreCase = True: .MultiLine = True
    .Pattern = "(?:(w+)(d+)s?-s?1+(d+))"
   Do While .Test(texto)
     Set cjMt = .Execute(texto)
     menor = CInt(cjMt(0).SubMatches(1))
     maior = CInt(cjMt(0).SubMatches(2))
     If maior > menor Then
       strTemp = ""
       For i = menor To maior
         strTemp = strTemp & cjMt(0).SubMatches(0) & i & IIf(i = maior, "", ",")
       Next i
       texto = .Replace(texto, strTemp)
     Else
       Exit Do
     End If
   Loop
   End With
   ExpandeLista = texto
End Function

 
Postado : 15/09/2016 2:43 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite rdj500

Seja bem-vindo ao fórum!

Excluí o tópico duplicado, pois não é permitido 2 tópicos do mesmo autor sobre o mesmo assunto.

Para facilitar a tua participação no fórum, solicito que você acesse os links abaixo:
viewtopic.php?f=7&t=203
viewtopic.php?f=7&t=7903
viewtopic.php?f=7&t=3841
viewtopic.php?f=7&t=16757
viewtopic.php?f=7&t=12600
viewtopic.php?f=7&t=3371

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 15/09/2016 6:05 pm