Consulta Macro Excel 2010
Publicado por Mariano (1 intervención) el 21/02/2018 19:52:34
Hola Buenas Tardes les comento que estoy haciendo una Macro basada en un reporte de datos que nos genera el sistema de control de accesso de nuestros Empleados en la empresa que trabajo.
En el mismo listado el reloj me trae valores que, si bien se encuentran correctamente reflejados, la encargada de recursos humanos no es capaz de entenderlos con "claridad" ya que los empleados se quejan al ver ciertos valores...
Les Muestro una foto de un ejemplo de planilla en cuestión:
Yo en este ejemplo borre los valores de las columnas "Tiempo Extra" y "Tiempo Cumplido" pero usualmente cuando ella exporta esos valores se encuentran en la planilla...
A partir de estos valores yo comencé a hacer un Macro para poder calcular cada uno de los valores que muestra esta planilla.
-Llegada Tarde
-Salida Temprano
-Tiempo Extra (aunque lo muestre como dije antes lo calculo ya que quiere que se vea la resta entre Salida el Horario de Salida restando llegada tarde ya que el sistema de reloj lo único que hace es mostrarte cuanto fue el tiempo extra que el empleado tuvo)
-Tiempo Trabajado (Que es el resultado entre la salida - entrada + tiempo extra)
El código que usa el macro es el siguiente:
Otra cosa al exportar el archivo los valores de las columnas Horario Entrada y Horario Salida me figuran como valor tipo texto y para que me tome la macro tengo que apretar la tecla ENTER hay una forma como para que de una me tome los horarios??
Me gustaria saber donde estoy errando y de que manera podria mejorar este codigo para poder hacer lo que necesito..
Muchas Gracias!
En el mismo listado el reloj me trae valores que, si bien se encuentran correctamente reflejados, la encargada de recursos humanos no es capaz de entenderlos con "claridad" ya que los empleados se quejan al ver ciertos valores...
Les Muestro una foto de un ejemplo de planilla en cuestión:
Yo en este ejemplo borre los valores de las columnas "Tiempo Extra" y "Tiempo Cumplido" pero usualmente cuando ella exporta esos valores se encuentran en la planilla...
A partir de estos valores yo comencé a hacer un Macro para poder calcular cada uno de los valores que muestra esta planilla.
-Llegada Tarde
-Salida Temprano
-Tiempo Extra (aunque lo muestre como dije antes lo calculo ya que quiere que se vea la resta entre Salida el Horario de Salida restando llegada tarde ya que el sistema de reloj lo único que hace es mostrarte cuanto fue el tiempo extra que el empleado tuvo)
-Tiempo Trabajado (Que es el resultado entre la salida - entrada + tiempo extra)
El código que usa el macro es el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim nume_regi As Integer
Dim i As Integer
Dim HEntrada As Date
Dim HSalida As Date
Dim Entrada As Date
Dim Salida As Date
Dim LlegaTarde As Date
Dim SaleTemprano As Date
Dim TiempoExtra As Date
Dim TiempoCumplido As Date
Dim ExtraTotal As Date
Range("A2").Select
nume_regi = Range("A1").End(xlDown).Row - 1
For i = 1 To nume_regi
HEntrada = Cells(2 + i, 6)
HSalida = Cells(2 + i, 7)
Entrada = Cells(2 + i, 8)
Salida = Cells(2 + i, 9)
'Cells(2 + i, 12) = "" 'Borro lo que esta en TiempoExtra'
'Cells(2 + i, 13) = "" 'Borro lo que esta en TiempoTrabajado'
If Entrada > HEntrada Then
LlegaTarde = HEntrada - Entrada
Cells(2 + i, 10) = LlegaTarde
Else
LlegaTarde = "0" 'Aca quiero que me aparezca 0 y me muestra como valor 12:00 a.m
Cells(2 + i, 10) = LlegaTarde
End If
If Salida < HSalida Then
SaleTemprano = HSalida - Salida
Cells(2 + i, 11) = SaleTemprano
Else
SaleTemprano = "0" 'idem arriba
Cells(2 + i, 11) = SaleTemprano
End If
TiempoExtra = HSalida - HEntrada - LlegaTarde - SaleTemprano
Cells(2 + i, 12) = TiempoExtra
ExtraTotal = ExtraTotal + TiempoExtra
TiempoCumplido = HSalida - HEntrada - TiempoExtra
Cells(2 + i, 13) = TiempoCumplido
Next i
Cells(6, 15) = ExtraTotal ' Aca se calcula la cantidad de horas extras'
Application.ScreenUpdating = True
End Sub
Otra cosa al exportar el archivo los valores de las columnas Horario Entrada y Horario Salida me figuran como valor tipo texto y para que me tome la macro tengo que apretar la tecla ENTER hay una forma como para que de una me tome los horarios??
Me gustaria saber donde estoy errando y de que manera podria mejorar este codigo para poder hacer lo que necesito..
Muchas Gracias!
Valora esta pregunta
0