Informe Conexión-Desconexión

30/04/2006 - 09:54 por smartito | Informe spam
Hola !

Pues tengo el siguiente problema, no me sale una macro que tengo que
hacer, os cuento:

Tengo un Libro ( "ConexionDesconexion.xls" ) que tiene dos Hojas (
"Reporte", "Calculo Retrasos" )

Dentro de la Hoja "Reporte" tengo las siguientes columnas con datos.

Columna A: "Nombre del agente"
Columna B: "Extn"
Columna C: "Hora de Acceso"
Columna D: "Hora de Desconex."
Columna E: "Identif."

Los encabezados de columna empiezan en la fila 3 (tres)
Los datos empiezan en la fila 4 (cuatro)

En esta hoja tenemos datos por ejemplo:

Nombre del agente Extn Hora de Acceso Hora de Desconex. Identif.
JuanAntonioCastillo 61588 07:59 11:01 65123
JuanAntonioCastillo 61588 11:03 14:10 65123
JuanAntonioCastillo 61588 14:10 16:01 65123
ManuelRomero 61511 08:13 15:02 65155
ManuelRomero 61511 15:05 15:49 65155

Bien creo que con estos datos es suficiente, paso a describir la hoja
"Calculo Retraso"

Columna B: "Nombre del Agente"
Columna C: "Id Empleado"
Columna D: "Identif."
Columna E: "Hora Ent"
Columna F: "Hora Sal"
Columna G: "Cms Ent"
Columna H: "Cms Sal"
Columna I: "Ret Ent"
Columna J: "Ret Sal"
Columna K: "Total Ret"

Los encabezados empiezan en la fila 1 (uno)
Los datos empiezan en la fila 2 (dos)

Nombre del agente Id Empleado Identif. Hora Ent Hora Sal Cms Ent Cms
Sal Ret Ent Ret Sal Total Ret
JuanAntonioCastillo 41444 65123 08:00 16:00 07:59 16:01 00:00 00:00 00:01
ManuelRomero 41455 65155 08:00 16:00 08:13 15:49 00:13 00:11 00:24

Creo que se entiende bien lo que no me sale hacer con la macro, os
cuento.

En la Hoja "Reporte" vemos que tenemos tantas filas como
ConexionDesconexion al sistema tenga el agente, de ahí que se repitan
lineas de igual agente pero con distintas entradas salidas.
Lo que hay que conseguir es que partiendo de esos datos en la Hoja
"Calculo Retraso" saque los datos por agente. Es decir, al Agente
JuanAntonioCastillo (Soy yo :P) me haga los calculos necesarios para
saber si hago bien mi turno...

Decir que en la Hoja "Calculo Retrasos" ya hay datos como por ejemplo,
el "Hora Ent" y "Hora Sal" están ya introducidos, es el turno que
deberia hacer el agente, el "Identif." tb está introducido, y el
"Nombre del agente" y "Id Empleado" tb están.

Espero que no se me quede nada en el tintero (esto lo digo por nuestro
amigo Hector Miguel ;) )

Si no se entiende algo, [o necesitais información adicional] me
comentais ok?
Un saludo y de antemano muchas gracias por vuestra lectura.
Juan Antonio Castillo

Preguntas similare

Leer las respuestas

#1 AnSanVal
30/04/2006 - 14:08 | Informe spam
Hola Juan Antonio.
Pues creo que el tintero aún tiene tinta ;-)
a.- Los cabeceros no coinciden (Cms Ent Cms Sal Ret Ent Ret Sal Total Ret)
¿?
b.- tu dices: "...Lo que hay que conseguir es que partiendo de esos datos...
me haga los calculos necesarios para saber si hago bien mi turno..." ¿Que
quieres calcular? ¿el tiempo que estás conectado?

Un saludo desde Tenerife (España).
***********************************
Respuesta Responder a este mensaje
#2 smartito
30/04/2006 - 15:21 | Informe spam
Hola AnSanVal

En primer lugar gracias por tu respuesta, creia que iba a tener mas
aceptación :D

Te comento...

"Cms Ent" "Cms Sal" "Ret Ent" "Ret Sal" "Total Ret" son encabezados..
te digo que es cada uno

"Cms Ent" -> Hora de entrada cojida del reporte
"Cms Sal" -> Hora de salida cojida del reporte
"Ret Ent" -> Retraso en la entrada, calculada del reporte y de "Hora
Ent"
"Ret Sal" -> Retraso en la salida, calculada del reporte y de "Hora
Sal"
"Total Ret" -> Tiempo total de retras, calculado sumando "Ret Ent" +
"Ret Sal"

Quiero que me rellene la Hoja "Calculo Retrasos" cojiendo los datos de
la Hoja "Reporte" y de la Hoja "Calculo Retrasos" que como dije antes,
ya tenia algunos datos...

Espero que ahora no quede nada en el tintero, no obstante, si
necesitais mas información me lo decis vale?
Un saludo,
Juan Antonio Castillo
Respuesta Responder a este mensaje
#3 AnSanVal
01/05/2006 - 03:00 | Informe spam
Hola Juan Antonio.
Veamos si es esto lo que necesitas. En la hoja2:
en H2 escribe: =SI(F2>D2;F2-D2;0)
en I2 escribe: =SI(G2<E2;E2-G2;0)
en J2 escribe: =H2+I2
copias y pegas hacia abajo hasta donde tengas nombres.

En un módulo normal copia/pega este código y lo ejecutas desde Hoja2.

Sub pasaDatos()
Dim he As Date
Dim hs As Date
Dim fila As Integer
Sheets(2).Cells(2, 1).Select
Do Until ActiveCell = ""
he = Val("24:00")
hs = Val("00:00")
For fila = 4 To 100
If Sheets(1).Cells(fila, 1) = "" Then Exit For
If Sheets(1).Cells(fila, 1) = ActiveCell Then
If Sheets(1).Cells(fila, 3) < he Then he = Sheets(1).Cells(fila, 3)
If Sheets(1).Cells(fila, 4) > hs Then hs = Sheets(1).Cells(fila, 4)
End If
Next fila
Cells(ActiveCell.Row, 6) = he
Cells(ActiveCell.Row, 7) = hs
ActiveCell.Offset(1, 0).Select
Loop
End Sub

Si tienes dudas o no es lo que necesitas, coméntalo por favor.

Un saludo desde Tenerife (España).
*********************************
Respuesta Responder a este mensaje
#4 smartito
01/05/2006 - 08:30 | Informe spam
Hola,

Gracias por tu respuesta, pero no hace lo que buscaba...

Te comento por partes...

Veamos si es esto lo que necesitas. En la hoja2:
en H2 escribe: =SI(F2>D2;F2-D2;0)
en I2 escribe: =SI(G2<E2;E2-G2;0)
en J2 escribe: =H2+I2
copias y pegas hacia abajo hasta donde tengas nombres.



me imagino que eso es para calcular los retrasos, tendria que colocarlo
en I2, J2, K2

y con respecto al modulo.. creo que te falta ir aumentando las filas o
las columnas dentro del for... ya que no hace nada..
de todos modos a ver si alguien más puede aportar algo a este hilo ;)

Gracias de nuevo,
Un saludo,
Juan Antonio Castillo
Respuesta Responder a este mensaje
#5 smartito
01/05/2006 - 13:55 | Informe spam
A ver si me podeis hechar una mano (que no sea al cuello)

Si no entendeis algo de los mensajes, comentadmelo y os lo explico
mejor, es que me hace mucha falta y me estoy comiendo la cabeza y no
doy con ello...


De nuevo muchas gracias.
Un saludo,
Juan Antonio Castillo
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida