# entero (1550) a hh:mm (15:00) en la misma celda?

Buen día... Mi pregunta es la siguiente: como puedo condicionar una celda o darle una regla para que al digitar un número entero (ejemplo 1550), esta me la interprete como una marcación de hora sin necesidad de digitar el ":" entre los valores correspondientes a "hh:mm" (cambiar automáticamente a 15:50 en la misma celda y lo tome como valor de hora y no como número general)... Lo anterior, para eliminar el paso de digitar el ":" al registrar datos en una tabla en la que se registran varias horas seguidas (transferidos de un aplicativo externo que opera de la forma expuesta), y sería más fácil solo digitar "4" números seguidos por cada celda como se hace en el aplicativo mencionado
Muchas gracias de antemano por la respuesta proporcionada!...
Cordialmente,
Luis Eduardo Vargas Montoya

2 Respuestas

Respuesta
1
Puedes crear una nueva columna y en ella calcular las horas con una función, por ejemplo si las horas están en la columna A comenzando en la celda A1, puedes utilizar la siguiente función:
=NSHORA(EXTRAE(A1;1;2);EXTRAE(A1;3;2);0)
No olvides calificar para cerrar la pregunta.
Éxitos.
... Muchas gracias!... La apliqué en mi tabla y funciona, voy a resolver otros aspectos de relación de datos!.
Cordialmente,
Luis Eduardo Vargas Montoya.
Respuesta
1
en lo personal yo pondría los datos que tu deseas en una columna, y en la siguiente pondría una formula para que haga lo que necesito es decir si en A2 pones 1515 en B2 pondría la siguiente formula para que separe y ponga los dos punto =valor(extrae(A2;1;2)&":"&extrae(A2;3;2)), el resultado de B2 es 15:15
Si lo que necesitas es que al modificar la celda haga este cambio automáticamente sirve una macro, pero lo que pides no es siempre lo que necesitas, ya que cada vez que entres a la celda se correría la macro, pero igual te la paso
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B2:B65000")) Is Nothing Then
fila = ActiveCell.Row - 1
fila1 = "B" & fila
With Application.WorksheetFunction
mivariable = Mid(Range(fila1), 1, 2) & ":" & Mid(Range(fila1), 3, 2)
End With
Range(fila1).Value = mivariable
End If
End Sub
No olvides finalizar la pregunta si todo esta claro
... Igualmente, muchísimas gracias por la respuesta, me han sido muy útiles las opciones...
Cordialmente,
Luis Eduardo Vargas Montoya

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas