Separar horario en una celda

Hola, necesito separar dos horarios que están en una misma celda separados por espacio, y que formen parte de otras dos celdas, pero con las siguientes características. Que sean dos celdas que yo pueda elegir a voluntad, no contiguas. Ya que utilizando Datos y Texto en columnas, me la separa en dos celdas contiguas y en fila, y yo las necesito en columna.

Agradecería una ayuda ya que lo necesito para mi trabajo.

Saludos.

1 Respuesta

Respuesta
1

Pues si te he entendido bien esta es la solución. Vamos a suponer que esa columna donde tienes las horas es la Columna A y empezamos desde la celda A1 como por ejemplo:

3:45 22:12

13:31 21:41

.....

......

Y tienen un espacio de separación. Lo que tienes que hacer es ponerte en la primera celda de esa columna y ejecutar esta macro. Verás como hace lo que necesitas en la columna de al lado, es decir, la B.

Sub separar_horas()

fila = 1

Do While ActiveCell.Value <> ""

tope = Len(ActiveCell)

For p = 1 To tope + 1

extrae = Mid(ActiveCell, p, 1)

Total = Total & extrae

If extrae = "" And Total <> "" Then

Cells(fila, ActiveCell.Column + 1).Value = Total

fila = fila + 2

Total = ""

End If

If extrae = " " And Total <> "" Then

Cells(fila, ActiveCell.Column + 1).Value = Total

fila = fila + 2

Total = ""

End If

Next

ActiveCell.Offset(1, 0).Select

Loop

End Sub

Recuerda FINALIZAR y PUNTUAR mi labor

Perfecto, hace lo que necesito. Mil gracias.

Te consulto lo siguiente, necesito que esto se haga en otra hoja del documento, y además estoy tratando de ver que valores lo llevan a la posiciones que necesito.

Por otro lado y abusando de tu conocimiento, te consulto: este macro se debería ejecutar esporádicamente, el tema es que debería agregar una fila idéntica a la que apunta el horario cuando no esta desdoblado (o sea esta situación que planteo no es la habitual)

Por si no se entiende, con estos horario yo lleno otra hoja y utilizo esas horas para cálculos. En los casos en que los horarios están escritos como mencione en mi consulta, necesitaría abrirlos y realizar esos cálculos; pero me gustaría que solo en esos casos me agregue una fila extra, ya que el los demás casos no es necesario. Espero que se me haya entendido.

Saludos.

En cuanto a la primera cuestión te mando otra vez la macro marcando en negrita el cambio realizado. OJO, en ese linea en negrita tienes que cambiar los guiones por el nombre de la hoja a la que van los datos.

Y en cuanto a la segunda cuestión, la verdad, necesito que me mandes un ejemplo de lo que quieres por correo: [email protected]

Sub separar_horas()
fila = 1
Do While ActiveCell.Value <> ""
tope = Len(ActiveCell)
For p = 1 To tope + 1
extrae = Mid(ActiveCell, p, 1)
Total = Total & extrae
If extrae = "" And Total <> "" Then
Cells(fila, ActiveCell.Column + 1).Value = Total
fila = fila + 2
Total = ""
End If
If extrae = " " And Total <> "" Then
sheets("--------------").Cells(fila, ActiveCell.Column + 1).Value = Total
fila = fila + 2
Total = ""
End If
Next
ActiveCell.Offset(1, 0).Select
Loop
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas