Dividir Celda en Excel Cada vez que consiga una Coma (,)

Estaba revisando una pregunta que usted contesto en una oportunidad

Separar cadena de texto en Filas según el número de caracteres

Y yo estoy tratando de hacer algo muy similar sin embargo tengo dos variantes, lo primero es que lo que quiero dividir son números y lo segundo es que la división la quiero hacer cada vez que encuentre una coma (,)

En a2 puede que tenga también más registros encadenados por una Coma o registros simples ej.

A1 : 1000000,1000001,3000002
A2 : 1000001

A3 : 3000000,4000000,5000000

He estado tratando de dar con la funcionalidad que me permita hacer la separación, intente colocar que cada 7 Caracteres me haga la separación pero no lo hace si están unidos por una coma, mientras que si están separados por un espaciado si lo hace de forma efectiva.

Agradecería su ayuda sobre cualquier acotación que me pueda servir para solventar mi problema.

Mi correo es [email protected]

2 Respuestas

Respuesta
1

Puedes utilizar la funcionalidad de excel, realiza lo siguiente:

  1. Selecciona tus datos
  2. Entra al Menú de Excel Datos
  3. Selecciona Texto en columnas
  4. Selecciona "Delimitados"
  5. Presiona Siguiente
  6. En Separadores, marca la casilla "Coma"
  7. En Calificador de texto selecciona {ninguno}
  8. Presiona Siguiente
  9. En Formato de los datos en columnas, selecciona General o Texto según sea el caso
  10. Presiona Finalizar

Revisa el resulta y dime si es lo que necesitas, si es así, no olvides valorar la respuesta.

Esta respuesta no me sirve de ayuda, por que yo necesito hacer la división en Filas no en columnas (Como lo tiene explicado en su ejemplo)

Es decir en la hoja2 me tiene que quedar 

A1 : 1000000

A2 : 1000001

A3 : 3000002
A4 : 1000001

A5 : 3000000

A6 : 4000000

A7 : 5000000 

Etc... para una cantidad indeterminada de registros que se encontraran en la columna A de la hoja 1.

No había entendido que lo querías en filas.

Ahora con tu ejemplo me queda más claro. Cambia en la macro "Hoja1" y "Hoja2" por el nombre de tus hojas.

Sub Separar_Numeros()
'Por.Dante Amor
    '
    Set h1 = Sheets("Hoja1")
    Set h2 = Sheets("Hoja2")
    '
    h2.Cells.Clear
    j = 2
    For i = 1 To h1.Range("A" & Rows.Count).End(xlUp).Row
        datos = Split(h1.Cells(i, "A"), ",")
        For k = LBound(datos) To UBound(datos)
            h2.Cells(j, "A") = datos(k)
            j = j + 1
        Next
    Next
    MsgBox "fin"
End Sub

Recuerda cambiar la valoración a la respuesta.

.

Avísame cualquier duda

.

Respuesta
-2

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas