Fecha y Hora insertar

Me pregunto si una celda colo una POR (A1), en otra celda (a2) me puede devolver la fecha y hora que inserte esa POR, pero no debe actualizarse el valor de la hora, es decir debe quedar registrado el momento y no actualizarse minuto a minuto.

2 respuestas

Respuesta
1
Eso tendría que ser por medio de macro. Si sabes algo sobre el tema te puedo poner un ejemplo.
[email protected]
Perdón por no cerrar la respuesta, la verdad es que estuve de vacaciones. La verdad no tengo idea sobre macros, podrías explicarme o es muy complicado.
Aguardo tus comentarios.
Saludos.
Escribe a mi correo y te mando un ejemplo.
[email protected]
Te envíe por email un el archivo.
No me ha llegado. Envíamelo de nuevo.
[email protected]
Salio el email
Estimado Experto, simplemente Excelente tu atención, servicio, preocupación etc.
Altamente satisfecho con la respuesta y la rapidez.
Muchas gracias.
Respuesta
1
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
If Range("A1").Value <> "" Then
Range("A2").Select
Selection.NumberFormat = "m/d/yyyy h:mm"
Range("A2").Value = Date + Time
End If
End If
End SubHola, si es facil la macro es esta:
Esto hará lo siguiente, si en la celda A1 no hay ningún dato tampoco pondrá nada en la A2, pero si hay algún dato en la celda A1 en la A2 pondrá la fecha y la hora, y no se te actualizará. Actuará sola si que hagas nada, si pones un valor cualquiera en A1 en A2 se pone la fecha y la hora, si esta vacío la A2 también. Si borras el dato de A1 también tienes que borrarlo de A2 porque se quedará una vez que hayas puesto un dato.
>Un saludo
>Julio
Si te ha servido no olvides de puntuar la pregunta y finalizarla.
Estimado, perdón por no responder antes, la verdad es que estuve de vacaciones.
Por otro lado gracias por ocuparte de mi tema, la verdad no soy un entendido con Macros, si pudieras explicarme te lo agradecería, no le encontré la vuelta para hacer una macro.
Aguardo tus comentarios.
Gracias.
Saludos.
Vamos a ver si te explico, tu decías que querías escribir algo en la celda A1 y que automáticamente en la celda A2 pusiese la fecha y la hora. Bien para eso es esta macro que te envié y que te repito explicándote como la pones en tu Libro de Excel. Abres tu libro, ahora pulsas la combinación de teclas ALT+F11 y se te abrirá el editor de VBA, verás en el lado izquierdo una columna que detalla tus hojas del libro:
Hoja1
Hoja2
Hoja3
ThisWorkbook
Pulsas con el botón derecho sobre la Hoja1 y eliges ver código. Se te abrirá una ventana en blanco en la columna derecha, ahí copias y pegas la siguiente macro que voy explicando:
'Esto es para que se ejecute el codigo siguiente en la hoja designada Hoja1
Private Sub Worksheet_Change(ByVal Target As Range)
'Condicion Si elegimos la celda A1
If Target.Address = "$A$1" Then
'Condicion Y no la dejamos en blanco
If Range("A1").Value <> "" Then
'Que automaticamente seleccione la celda A2
Range("A2").Select
'Y la de el formato de celda mes/dia/año hora:minuto
Selection.NumberFormat = "m/d/yyyy h:mm"
'Y como valor ponga la fecha mas la hora del sistema
Range("A2").Value = Date + Time
'Fin primera condicion
End If
'Fin segunda condicion
End If
Fin de la macro
End Sub
Cuando hayas pegado la macro en el editor guardas tu libro con el nombre que quieras y lo cierras. Ahora al abrirlo y si tienes la seguridad de las macros en nivel medio( abres herramientas>Macros>Seguridad de macros> Eliges nivel Medio guardas y cierras) te pedirá si quieres habilitar las macros de ese libro eliges aceptar.
Ahora si pones cualquier dato en la celda A1 y pulsas ejecutar en el teclado (intro) se pondrá la fecha y la hora en automático en la celda A2. No se te actualizará con el paso del tiempo. Si borras el dato de A1 y la dejas en blanco y también de A2 al abrir el libro volverá a estar en blanco las dos celdas.
>Un saludo, puntúa y finaliza la pregunta
>Julio
Que impresionante, sos un capo. Lo pude hacer y es lo que necesitaba, ahora no deseo cerrar la consulta sin antes preguntar, como hago para extender esto a toda una fila,
Ejemplo:
        A B
1       x              18/02/09 18:20 hs.
2
3        x              18/02/09 19:10 hs.
4
Con tu ejemplo me di cuenta como funciona, ahora para lo mismo pero en A2, A3, A4, A5 etc, como hago.
Aguardo comentarios.
Gracias.
Vamos a ver como no sabemos en que celda quieres empezar ni cuantas en cuantas celdas quieres poner la fecha y la hora la macro tiene que preguntarte:
Private Sub Fec_Hor()
'Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
cel = InputBox("Dime en que celda empiezo", "PREGUNTA", "A1")
Range(cel).Select
num = InputBox("Dime cuantas veces lo repito", "PREGUNTA", "1")
If ActiveCell.Value <> "" Then
ActiveCell.Offset(0, 1).Select
Selection.NumberFormat = "m/d/yyyy h:mm"
ActiveCell.Value = Date + Time
ActiveCell.Offset(1, -1).Select
End If
For i = 1 To num
If ActiveCell.Value <> "" Then
ActiveCell.Offset(0, 1).Select
Selection.NumberFormat = "m/d/yyyy h:mm"
ActiveCell.Value = Date + Time
ActiveCell.Offset(1, -1).Select
Else
ActiveCell.Offset(1, 0).Select
End If
Next i
End Sub
Cuando abras tu hoja pulsas Alt+F11 se abrirá el editor de VBA pulsas con el derecho encima de la Hoja1 (columna izquierda) y eliges insertar modulo.
Copias y pegas la macro que te he dejado
Guardas y cierras
Al abrir el libro no hará nada, pulsas Alt+F8 y pulsas en ejecutar, te preguntará en que celda quieres empezar, (por defecto esta puesta A1, te preguntará cuantas veces quieres repetir la operación, por defecto esta puesto 1. Eliges lo que quieras y se ejecutará sola.
>Un saludo
>Julio
Otra vez yo, lo hice tal cual, pegue la macro, lo salve, cerré y al abrir puse habilitar macro, al presionar Alt F8 no me pregunta donde empezar, abre un cuadro de texto que dice: nombre de la macro y una solapa para cancelar, ¿eso solo?
Aguardo tus comentarios.
Si vuelves a leer el mensaje anterior después de pulsar Alt+F8 te pone que pulses en "EJECUTAR" pues pulsa en ejecutar.
Perdón por insistir pero no me permite presionar ejecutar, solo abre un cuadro de texto que dice: nombre de la macro y una solapa para cancelar, la solapa ejecutar no aparece habilitada para presionar.
Gracias.
Efectivamente tienes razón, no sé porque me encabezoné con mi error, para que funcione tienes que hacer lo siguiente:
Pinchas en Herramientas>Macros en la ventana que sale pones un nombre a la macro por ejemplo el que te puse Fec_Hor y pinchas en crear, ahora en la ventana que aparece estará el cursor parpadeando, copias lo siguiente y lo pegas;
Dim i As Integer
cel = InputBox("Dime en que celda empiezo", "PREGUNTA", "A1")
Range(cel).Select
num = InputBox("Dime cuantas veces lo repito", "PREGUNTA", "1")
If ActiveCell.Value <> "" Then
ActiveCell.Offset(0, 1).Select
Selection.NumberFormat = "m/d/yyyy h:mm"
ActiveCell.Value = Date + Time
ActiveCell.Offset(1, -1).Select
End If
For i = 1 To num
If ActiveCell.Value <> "" Then
ActiveCell.Offset(0, 1).Select
Selection.NumberFormat = "m/d/yyyy h:mm"
ActiveCell.Value = Date + Time
ActiveCell.Offset(1, -1).Select
Else
ActiveCell.Offset(1, 0).Select
End If
Next i
La primera linea tendras:
Sub Fec_Hor()
y la ultima:
End Sub
Entre esas dos lineas pegas la macro que te he puesto, ahora guardas y cierras.
Vuelves a abrir el libro y le das valores a la columna A los que quieras, y ahora SI pulsas Alt+F8 y ya esta tu macro, pulsas en ejecutar y hará lo que tu querías.
Disculpa, por el error,
Finaliza la pregunta y puntualá
>Un saludo
>Julio
Costo pero salio. El resultado debería ser excelente por la ultima respuesta, pero un tema a mejorar es la comprensión, hubo una o dos respuestas un tanto pechorativas.
Saludos.
Gracias,

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas