Ayuda para una macro de excel

Hola expertos
Me gustaría ver si alguien me podría ayudar a elaborar una macro la situación es la siguiente
En una celda tengo una cadena de números
Ejem.
1234567891234567
Necesito que haga lo siguiente
1234 5678 9123 4567
Así en cada celda
Es una serie por fila
Si alguien me pudiera ayudar se los agradecería mucho
Me urge

1 Respuesta

Respuesta
1
La única condición es que los números deben estar como texto, cunado tenga más tiempo veré como hacerlo si el dato es numérico.
Sub Separa()
Dim Dato As String
Dim Largo As String
Dim i As Integer
Dim j As Integer
Range("A2").Select 'asumiendo que el listado comienza aquí
Do Until IsEmpty(ActiveCell)
Dato = ActiveCell
Largo = Len(Dato)
j = Int(Largo / 4)
For i = 1 To j
If i = 1 Then
Dato = Left(Dato, (i * 4)) & " " & Right(Dato, Largo - (i * 4))
ElseIf i = j Then
Exit For
Else
Dato = Left(Dato, (i * 4) + i - 1) & " " & Right(Dato, Largo - (i * 4))
End If
Next
ActiveCell = Dato
ActiveCell.Offset(1, 0).Select
Loop
Cells(ActiveCell.Row - 1, ActiveCell.Column) = Dato
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas