Coloque isso no B2:
=MID(TRIM(MID(SUBSTITUTE($A2,"_",REPT(" ",999)),(COLUMN(A:A)-1)*999+1,999)),3,999)
Esta é a minha primeira vez postando aqui, então tenha paciência comigo.
Eu tenho a seguinte sequência de caracteres na célula A1:
C.Nome da empresa_E.234500_Y.Boston_S.Massachusetts_S.800x600 _
Eu quero analisar CompanyName (texto entre C. e _) em B2, 234500 em C2 (o número 234500 entre E. e _), Boston (texto entre Y. e _) em D2 e assim por diante. .
Qual é a melhor maneira de dividir uma string de texto com base em dois caracteres diferentes? neste caso X. e _
Obrigado
Obrigado pela resposta rápida. Consegui descobrir isso usando essa fórmula: Fórmula
Isso só funciona quando os prefixos para os campos são diferentes (A. B. C. D. E. etc)
Você deve usar curingas como este, em que "?" é o curinga para caracteres
dim str_to_cut as String, aux_str as String
dim str_ls as Variant()
dim workbook as workbook
set workbook = activeworkbook
dim ws as worksheets
set ws = workbook.sheets(1)
str_to_cut = C.CompanyName_E.234500_Y.Boston_S.Massachusetts_S.800x600_
str_ls = Split(str_to_cut, "_")
for x = 0 to Ubound(str_ls)-Lbound(str_ls) #size the array
aux_str = Split(str_ls(x), "=?.")(1) #maybe you don't need the =
ws.cells(1, x+2) = aux_str #need to get the right column
next x
você pode precisar ajustar sua lógica sobre onde colocar os resultados e talvez algumas sintaxes, felicidades