Sumar minutos en campo hora.

Tengo un campo en una tabla que me guarda la hora así 12:18:34 pm. Necesito a esta hora en una consulta de access sumarle por ejemplo 2 minutos de tal manera que quede 12:20:34 pm en caso que cambie pues que actualice así: si esta 12:59:23 pm y sumo 2 pues debería quedar 01:01:23 pm.
He intentado con dateadd(n, 2, horafac) pero sale error.

1 respuesta

Respuesta
1

Para usar la función en una consulta has de utilizar un formato similar al que se emplea en el código VBA.

En el código harías:

x=dateadd("n",2,horafac)

y en una consulta debes poner lo siguiente:

AgregFecha("n";2;[horafac])

Fíjate que has de poner comillas dobles al especificar el intervalo tanto en VBA como en la consulta, y has de poner corchetes en el nombre del campo cuando lo pones en una consulta.

Una cosa, al pasar el intervalo de las 24 horas, se agrega de forma automática 1 día al valor del campo, has de tenerlo en cuenta por si haces otras operaciones con las horas.

Hola, gracias por la respuesta, pero sigue apareciendo : La expresión que ha especificado contiene una sintaxis no válida. Así lo tengo yo: agregfecha("n",2,horafac) Lo tengo con coma porque así tengo configurado el access.

Hola, agregfecha("n",2,[horafac]) tampoco funciona.

Gracias.

¿Dónde lo estás usando?. ¿Qué versión de Access usas?.

Es muy raro lo que dices.

Una cosa es que tú configures algunas cosas, pero la forma de construir sentencias con funciones no se puede modificar.

Si tienes Dropbox, SkyDrive, o algún sitio para dejar ficheros, puedes poner ahí la base de datos y te lo miro.

Pues si me informas de algún correo electrónico te envío la base de datos que es bastante pequeña.

Gracias.

Lo mejor es que abras una cuenta en Dropbox, SkyDrive, GoogleDocs... Así se evita el sobrecargar las cuentas de correo, que en mi caso no puedo recibir ficheros adjuntos. Por eso utilizo DropBox, SkyDrive, GoogleDocs y sitios similares.

Una vez que hayas subido el fichero, simplemente mandas el enlace y lo puedo descargar.

Hola:

Este es el vínculo del archivo. Se me olvidó decirte que uso access 2013.

https://www.dropbox.com/s/9xmr6f07srn85us/datos%20-%20copia.rar

Ya he descargado la base de datos, pero la tienes con contraseña. No puedo abrirla.

Uyyyy que pena, la contraseña es 12345.

¿Y dónde quieres usar la función?

Pues básicamente es crear una consulta que haga lo que necesito con el campo horafac de la tabla factura. Lo que pasa es que no la <span style="white-space: nowrap;">creé pues porque no me deja pasar.</span>

<span style="white-space: nowrap;">Gracias.</span>

Crea una consulta nueva, no agregues ninguna tabla.

Selecciona "Vista SQL" y escribe lo siguiente en la ventana que te aparezca:

SELECT factura.horafac, DateAdd("n",2,[horafac]) AS Expr1
FROM factura;

No cambies comas ni puntos ni nada, te tiene que funcionar.

Esto si que no lo había visto antes. Al colocarlo como instrucción sql funciona, pero al colocar lo mismo directamente sobre la consulta en el diseño sigue apareciendo el error. Sabes a qué se debe esto?

El formato en el modo diseño y en el modo SQL son distintos.
Una vez que hayas escrito el texto en el SQL, lo ejecutas, y si funciona, puedes abrir la consulta en vista diseño.
Podrás ver las diferencias.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas