Excel - Ayuda sobre función que ya tengo y no se como funciona

 
Vista:
Imágen de perfil de Roberto
Val: 30
Ha disminuido su posición en 11 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda sobre función que ya tengo y no se como funciona

Publicado por Roberto (28 intervenciones) el 24/01/2015 22:44:21
Hola a todos

Me podríais ayudar ?

Veréis, el informático de la empresa donde trabajo, antes de quedarse de baja, me facilitó ésta fórmula que os pondré a continuación. Me la hizo a medida para un cuadrante en el que estoy trabajando.

Me dijo, crea un módulo y pégala en él, después en éstos dos apartados pones donde quieres que te empiece a rellenar la matriz. Pues aquí tengo la macro, y no me entero con ella, no se para que sirve cada cosa y tengo que intentar adaptarla a mis necesidades.

Sería alguien tan amable de poner detrás de cada cosa, la expicación para que sirve a ver si me entero ?

Función:

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
Dim TURNOS(9) As String
TURNOS(0) = "O"
TURNOS(1) = "O"
TURNOS(2) = "T"
TURNOS(3) = "T"
TURNOS(4) = "N"
TURNOS(5) = "N"
TURNOS(6) = " "
TURNOS(7) = " "
TURNOS(8) = " "
TURNOS(9) = " "
 
Sheets("Enero").Select
y = 3 '(Aquí fué donde me dijo que tenía que poner la columna donde quería que me empezara a rellenar la matriz con los horarios del cuadrante)
i = 0
 
For x = 11 To 21 '(Aquí me dijo que pusiera las filas que quisiera que rellenase, o sea, el número de turnos)
For Z = 0 To 30
 
If i > 9 Then i = 0
 
 
Cells(x, y).Value = TURNOS(i)
i = i + 1
y = y + 1
 
If y = 31 Then y = 9
 
Next Z
If Z > 31 Then
i = i - 1
For ind = 0 To 2
i = i + 1
If i > 9 Then i = 0
Next ind
End If
 
Next x
 
End Sub


De todo lo demás que no especificado, no me entero y no se para que sirve. Alguien me la puede expicar un poco por encima ?

Por ejemplo:
- Al ejecutarla rellena una vez la matriz todos los días, pero luego vuelve a rellenarse en los mismos días encima de lo anterior, dejando mal la correlación de turnos.
- Las siguientes filas, la 13, 15, 17, 19 y 21, empiezan a rellenarse desde la columna 10 y no desde la misma que la 11, o sea, la tercera.
- En una primera hoja, yo debería de meter los tres primeros días del cuadrante de cada trabajador, y la matriz debería de coger esos tres días para continuar rellenando en función del turno de cada uno.
- Después de rellenar Enero, debería de saltar a la siguiente hoja, Febrero, y seguir con la matriz en función del último día de Enero.

Pues muchas gracias a todos por el tiempo que dediquéis a ésto, y por poco que sea, os aseguro que de algo me servirá esperando a que éste hombre se mejore, aunque será para largo según me han dicho.

Un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 11
Ha aumentado su posición en 3 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda sobre función que ya tengo y no se como funciona

Publicado por CoquitoPe (64 intervenciones) el 25/01/2015 01:22:53
Un saludo... se puede entender en 70%... puedes publicar tu hoja... y mencionar la versión de tu EXCEL...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Roberto
Val: 30
Ha disminuido su posición en 11 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda sobre función que ya tengo y no se como funciona

Publicado por Roberto (28 intervenciones) el 25/01/2015 03:24:25
Intenté subir el archivo, pero no me deja por no tener el navegador actualizado, y ahora mismo estoy en el trabajo.

Intentaré hacerlo mañana.

De todas formas, tengo la misma consulta subida en éste otro foro que suelo consultar, y allí si me dejó subir el archivo. pongo el enlace, espero no cometer algo ilegal en el foro.

http://www.todoexcel.com/foro-excel/macros/duda-sobre-macro-personalizada-explicacion-tengo-t30033.html

Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 3 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda sobre función que ya tengo y no se como funciona

Publicado por CoquitoPe (64 intervenciones) el 25/01/2015 04:28:03
Lo siento... no tengo permiso para abrirlo... publica tu correo...
te ayudare...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JoaoM
Val: 175
Ha disminuido su posición en 2 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda sobre función que ya tengo y no se como funciona

Publicado por JoaoM (222 intervenciones) el 25/01/2015 21:24:06
Las ayudas se dan por via email? o en el foro?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda sobre función que ya tengo y no se como funciona

Publicado por Legarda (68 intervenciones) el 27/01/2015 15:38:55
hola
primero tienes un vector que de acuerdo a unos ciclos For te ubica lo que hay en i que es la pocisión del vector osea

cells(x, y) es una coordenada

x son las filas
Y son las columnas
de la hoja

osea esta linea "y = 3" es la columna "C" cada columna tiene su numero en orden así "A" = 1, "B" = 2 y así en orden, osea que te va a mostrar desde la C

si necesitas ayuda en algo particular me dices
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Roberto
Val: 30
Ha disminuido su posición en 11 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda sobre función que ya tengo y no se como funciona

Publicado por Roberto (28 intervenciones) el 28/01/2015 09:47:32
Pues voy coniciendo mas detalles, pero me seguirían éstas dudas:

i = 0
For Z = 0 To 30
If i > 9 Then i = 0

i = i + 1
y = y + 1
If y = 31 Then y = 9
Next Z
If Z > 31 Then
i = i - 1
For ind = 0 To 2
i = i + 1
If i > 9 Then i = 0
Next ind
Next x
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar