Discussion:
Suma minutos totales a formato horas: minutos
(demasiado antiguo para responder)
news.terra.es
2003-12-14 04:25:18 UTC
Hola amigos. Sigo con el tema de convertir decimales a horas y creo que ya
lo conseguí, gracias a Buho, Greg, Vigón y otros.

Ahora bien.

Si el resultado que tengo al final es 430 minutos, por ejemplo....

Que función puedo aplicar par que en formato fecha me dé las 7 h y 10
minutos

7 h*60 min= 420 min + 10 min = 430

ŽGracias por adelantado y Feliz Navidad a todos.
Búho
2003-12-14 07:26:44 UTC
Hola de nuevo Mariano.
Yo lo haría asi, ya que desconozco bastante las funciones propias de VB
sobre tratamientos de horas etc (En verdad, nunca se ma ha dado bien este
tema)

Si tu tienes una cantidad en minutos y deseas sacar cuantas horas y minutos
hay en esa cantidad:
Dim M as Integer
M=430
Int(M / 60) te dará las horas completas
M Mod 60 te dará los minutos que restan y que no pueden completar una hora

por ejemplo
Function DameResultados(Minutos As Integer)
MsgBox "Totales en Horas / Minutos: " _
& Int(Minutos / 60) & " horas con " & Minutos Mod 60 & " minutos"
End Function
Si tu ejecutas esa funcion con la cantidad de tu ejemplo (430 minutos)
obtendras, las 7 horas y 10 minutos

¿Necesitas los resultados por separado, es decir Horas por un lado y minutos
por otro?
Yo he supuesto que si.
En cualquier caso, el numero de horas y de minutos que hay en una cantidad X
integer, que representan minutos es tal y como te lo he dicho.
Lo que ya no sé es como quieres representar al final dichos resultados, si
como horas y minutos en dos variables independientes para operar con ellas o
como. Yo he supuesto que el primer caso, por que creao recordar que con esas
cantidades calculabas el salario de una persona.
--
Saludos desde Valladolid
Francisco Javier García Aguado
---
http://www.buho.tk [http://www.clikear.com/webs/accessbhuo/index.html]
http://groups.msn.com/Access2000VisualBasic/
=======================================
Web de Access de Juan M Afan de Ribera
http://www.juanmafan.tk
=======================================
news.terra.es
2003-12-14 13:29:00 UTC
Estimado Paco. Ya veo que por este medio eres una bala contestando. Como
puedes suponer se me olvido poner monk, porque me he traido el trabajo a
casa para el finde... porque la verdad es que me está dando algún dolor que
otro de cabeza el tema de las horitas. Ahora mismo me pongo manos a la obra
con tu código.

Sí que me suena el término Int(M / 60) y M Mod 60 porque hice una aplicación
compleja de control horario en formato fecha para muchos empleados y va como
la seda (pero solo para horas, no importes). Algún dia te la enseñaré. El
problema es que ahora no la tengo en casa, y como dije, es para otra de
salarios y empleados, donde se tienen que mezclar churras con merinas, es
decir formato decimal en las horas x salario, pero se ha introducido una
modificación que es que si son nocturnas o "golfas"... de 12 a 6 de la
mañana, una hora (en formato horario) sería 1,10 horas, y las golfas 1,25.

Te lo explico, porque claro dirás ¿qué es lo que quiere hacer este tio?. Lo
voy a resumir al minimo minimo:

1 Empleado, entra a las 22 horas y sale a las 23,5 horas /en formato
decimal (se consideran nocturnas). Bien como la aplicacion gorda ya estaba
hecha hace tiempo pues me da: 1,5 horas, que en realidad en formato fecha
serían 1,30 minutos, pero antes no me importaba, porque 1,5 horas por 20
euros hora por ejemplo, serían 30 euros y yastá.

Ahora viene el reto: Al ser nocturnas estas horitas, hay que subir 1.10 el
importe de la hora. Bien, porque sería 30 euros*1.10 y listo. El importe
solucionado con una sentencia condicional if.... tal.. al sobrepasar las 22
a las 24. Correcto.

El problema gordo viene porque el empleado no hace ahora 1,5 horas sino que
LO QUIEREN SABER EN FORMATO FECHA. Bien serían 1,30 en formato fecha ( eso
ya lo calculé con la fórmula de Rubén Vigón (Gracias Rubén)

Dim h As Currency
h = 1,5
MsgBox TimeSerial(Int(h), (h - Int(h)) * 100, 0) (ojo, que el 100 lo
tuve que cambiar por 60) y va. =1,30 en fecha.

Pero realmente haría de la primera hora, es decir los primeros sesenta
minutos, setenta, -diez más-, . Y los segundos treinta minutos, treinta y
cinco. Es decir de 1,30 horas -fecha- el empleado que realiza en nocturnas
realmente háría 1,45 ó
105 minutos. Bufff... el incremento lo conseguí con una fórmula marianítica
a pedal porque las formulas no las tenía en casa.. Mentalmente, sería 1,45
horas. (60+45). Ahí es donde entra en juego la fórmula que voy a probar y
que me has mandado. Claro tengo que mezclar horas con minutos para hacer
calculos de suma, pero al final tienen que volver a desglosarse en horas y
minutos.

Donde se aplica?: Púes lógicamente a la SUMA de todas horas del mes - o
período entre fechas- por empleados, categorías y departamentos (un sin
vivir...), pero me conformo con que al final, si un empleado tiene 1200
minutos de nocturnas, por ejemplo, la formulita me diga que son EN FORMATO
FECHA tantas horas y TANTOS minutos., El importe se sigue calculando con
normalidad en decimal.

En fin no si me has entendido el planteamiento o sugieres otro mejor. Será
bien recibido!!!!
________________________

En otro orden de cosas te preguntaré ¿Donde tienes tu página ahora? porque
he visto la foto del pajarraco por ahí y na de na... También te di la
dirección de mi nueva página y no me contestaste.

Respecto al tema de los spam, tengo un problema gordo últimamente con spam
raros de microsoft los cuales vienen como 8 o 10 en cada remesa con adjunto
de virus incluido, y no veo la manera de eliminarlos, ni con filtros ni
nada, ya me he cargado dos correos porque era una verdadera lata y en cuanto
te localizan el nuevo siguen fastidiando. ¿Os ha pasado a alguien?.
Realmente no son Spam que se pueden más o menos eliminar, sino virus puros y
duros y estoy harto!!!.

Bueno Paco. Te envié desde la oficina un email a la dirección que me diste
nueva y no me contestaste. Revisa el filtro antispam. Prefiero por lo que
veo por ahora hacerlo por aquí.

Y nada más. Saludos Paco y perdona la novela. A ver si nos vemos un día y
FELIZ NAVIDAD A TODOS!!!.

Mariano.

Te contestaré si logré el objetivo con tu fórmula.
Búho
2003-12-14 13:59:42 UTC
Si, la verdad que las News me las leo continuamente y los correos (Que no
son urgentes) tardo un poco mas en contestarles. Recibo bastantes al día y
espero que se acumulen unos cuantos para ponerme a contestarles todos a la
vez. Y es que, creeme, a parte de los Spam de las narices, recibo
batantantes correos personales de todo tipo y muchos días me faltan ganas de
ir contestando uno a uno según van viniendo.

La verdad que esto de las horas y los tiempos y los salarios, o estas con
ello de forma asidua y le tienes cogido el truquillo, o se puede convertir
en un verdadero quebradero de cabeza (Cosa que a mi me pasa). Las fechas y
horas siempre se me han atrangatado y no hay tu tía.
Pues nada, ya te contestaré con calma al correo :-)
Mi página la tienes al pie de este correo. Ya hablaremos....
--
Saludos desde Valladolid
Francisco Javier García Aguado
---
http://www.buho.tk [http://www.clikear.com/webs/accessbhuo/index.html]
http://groups.msn.com/Access2000VisualBasic/
=======================================
Web de Access de Juan M Afan de Ribera
http://www.juanmafan.tk
news.terra.es
2003-12-14 20:08:48 UTC
.........
rdad que esto de las horas y los tiempos y los salarios, o estas con
Post by Búho
ello de forma asidua y le tienes cogido el truquillo, o se puede convertir
en un verdadero quebradero de cabeza (Cosa que a mi me pasa). Las fechas y
horas siempre se me han atrangatado y no hay tu tía.
Pues nada, ya te contestaré con calma al correo :-)
Mi página la tienes al pie de este correo. Ya hablaremos....
--
Gracias Buho. Con Int para horas y Mod para minutos, el tema está resuelto.
Eres un lince.. perdón un BUHO.... dícese de ave nocturna que se conecta a
estos foros para ayudar a aquellos que tienen insomnio a que puedan dormir
tranquilamente con los deberes hechos... :0)

Ahora que ya sale, intentaré buscar el camino más fácil para realizar los
informes que al fin y al cabo es lo que se necesita. Aunque ya estoy
pensando si en vez de utilizar números es preferible ahora utilizar
fechas... pero buuuf... eterno problema el de la "perfección".

Saludos desde Valladolid. Feliz Navidad a todos.



Database (slave) 0.003460 s
44.3203 kB
Benchmark Min Max Average Total
SELECT `lang` FROM `newsgroup` WHERE `newsgroup_url` = 'microsoft.public.es.access' (4)
0.000154 s
0.000223 s
0.000173 s
0.000691 s
2.2344 kB
2.3672 kB
2.2695 kB
9.0781 kB
SELECT `code`, `name` FROM `lang` WHERE `code` = 'es' (3)
0.000130 s
0.000141 s
0.000135 s
0.000405 s
2.4141 kB
2.4141 kB
2.4141 kB
7.2422 kB
SELECT * FROM `lang` WHERE `code` = 'es' (1)
0.000191 s
0.000191 s
0.000191 s
0.000191 s
12.5313 kB
12.5313 kB
12.5313 kB
12.5313 kB
SELECT * FROM `thread` WHERE `hash` = 'bXWjfKrq' (1)
0.000515 s
0.000515 s
0.000515 s
0.000515 s
4.2500 kB
4.2500 kB
4.2500 kB
4.2500 kB
SELECT * FROM `newsgroup` WHERE `newsgroup_id` = '90241' (1)
0.000568 s
0.000568 s
0.000568 s
0.000568 s
5.8203 kB
5.8203 kB
5.8203 kB
5.8203 kB
SELECT * FROM `temp_simthread` WHERE `hash` = 'bXWjfKrq' (1)
0.000624 s
0.000624 s
0.000624 s
0.000624 s
2.7109 kB
2.7109 kB
2.7109 kB
2.7109 kB
SELECT text_res, img_res, manual FROM porndetect WHERE hash = 'bXWjfKrq' AND page = 1 (1)
0.000466 s
0.000466 s
0.000466 s
0.000466 s
2.6875 kB
2.6875 kB
2.6875 kB
2.6875 kB
Kohana 0.008864 s
48.9531 kB
Benchmark Min Max Average Total
find_file (73)
0.000005 s
0.000270 s
0.000121 s
0.008864 s
0.5234 kB
2.1563 kB
0.6706 kB
48.9531 kB
Requests 0.060941 s
483.7109 kB
Benchmark Min Max Average Total
"bXWjfKrq/suma-minutos-totales-a-formato-horas-minutos" (1)
0.062783 s
0.062783 s
0.062783 s
0.062783 s
511.7188 kB
511.7188 kB
511.7188 kB
511.7188 kB
Thread controller 0.000957 s
27.7188 kB
Benchmark Min Max Average Total
Init (1)
0.000957 s
0.000957 s
0.000957 s
0.000957 s
27.7188 kB
27.7188 kB
27.7188 kB
27.7188 kB
Thread parsing 0.044505 s
113.5547 kB
Benchmark Min Max Average Total
Other (2)
0.002407 s
0.007237 s
0.004822 s
0.009644 s
15.9844 kB
23.3281 kB
19.6563 kB
39.3125 kB
PHP Post Parsing (1)
0.003149 s
0.003149 s
0.003149 s
0.003149 s
55.6016 kB
55.6016 kB
55.6016 kB
55.6016 kB
C++ Post Parsing (1)
0.031454 s
0.031454 s
0.031454 s
0.031454 s
11.5938 kB
11.5938 kB
11.5938 kB
11.5938 kB
Three (1)
0.000259 s
0.000259 s
0.000259 s
0.000259 s
7.0469 kB
7.0469 kB
7.0469 kB
7.0469 kB
Load & uncompress 0.002343 s
13.7031 kB
Benchmark Min Max Average Total
load_thread (1)
0.002343 s
0.002343 s
0.002343 s
0.002343 s
13.7031 kB
13.7031 kB
13.7031 kB
13.7031 kB
Application Execution (507) 0.020666 s 33.418700 s 0.197905 s 0.078114 s
749.6172 kB 4,534.3750 kB 1,358.4475 kB 1,133.6797 kB