Curioso. Función VBA en una hoja y me modifica todas las del libro
publicado
Hola Buenas, tengo un problema. He generado en una hoja, una tabla con personal y funciones. He creado despues una funcion en VBA que según aparezca en una celda SI/No (Dependiendo si el personal está trabajando o no), me hace unos cálculos de sumarme unas celdas (me calcula si el operario realiza una actividad o no), y me saca un total (que es donde tengo puesta la función).
La función va bien, el problema es que esa hoja la voy repitiendo cada mes, y si actualizo las formulas de la pestaña del último mes, pulsando CTRL+ALT+F9, me modifica los datos de todos los meses anteriores, dejándome en las celdas, los valores del ultimo mes en todas las hojas. Es decir, si yo calculo Enero pulsando CTRL+ALT+F9, me salen los valores de Enero correctos, pero si voy al ultimo mes y actualizo, me calcula bien los del ultimo mes, pero si voy a la pestaña de Enero, me ha puesto los datos del ultimo mes en todas.
La función es esta:
'Si tenemos las celdas, como (i,j)>> (fila, columna)
'
' fila As Integer > Campo que indica el numero de fila donde se empieza a evaluar
' columna As Integer > Campo que indica el numero de columna donde se empieza a evaluar
' iteraciones As Integer > Nº de veces que se va a preguntar la condición
' columna_evaluacion As Integer > Columna donde se encuentra la celda a evaluar con su contenido
' valor_evaluación as String > Valor a evaluar "SI"
Function Contar_Polivalencia_verde(fila As Long, columna As Long, iteraciones As Long, columna_plantilla As Long) As Long
'inicializo la variable resultado
Dim resultado As Long
Dim i As Long
i = fila
resultado = 0
'comienzo el bucle
For i = fila To iteraciones
If Cells(i, columna_plantilla).Value = "SI" And Cells(i, columna).Value = "SI" Then 'criterio que debe cumplir
resultado = resultado + 1
End If
Next
Contar_Polivalencia_verde = resultado
End Function
Os adjunto el archivo de ejemplo para ver si se puede encontrar una solución. Muchas gracias por adelantado.
Hola Buenas, tengo un problema. He generado en una hoja, una tabla con personal y funciones. He creado despues una funcion en VBA que según aparezca en una celda SI/No (Dependiendo si el personal está trabajando o no), me hace unos cálculos de sumarme unas celdas (me calcula si el operario realiza una actividad o no), y me saca un total (que es donde tengo puesta la función).
La función va bien, el problema es que esa hoja la voy repitiendo cada mes, y si actualizo las formulas de la pestaña del último mes, pulsando CTRL+ALT+F9, me modifica los datos de todos los meses anteriores, dejándome en las celdas, los valores del ultimo mes en todas las hojas. Es decir, si yo calculo Enero pulsando CTRL+ALT+F9, me salen los valores de Enero correctos, pero si voy al ultimo mes y actualizo, me calcula bien los del ultimo mes, pero si voy a la pestaña de Enero, me ha puesto los datos del ultimo mes en todas.
La función es esta:
'Si tenemos las celdas, como (i,j)>> (fila, columna)
'
' fila As Integer > Campo que indica el numero de fila donde se empieza a evaluar
' columna As Integer > Campo que indica el numero de columna donde se empieza a evaluar
' iteraciones As Integer > Nº de veces que se va a preguntar la condición
' columna_evaluacion As Integer > Columna donde se encuentra la celda a evaluar con su contenido
' valor_evaluación as String > Valor a evaluar "SI"
Function Contar_Polivalencia_verde(fila As Long, columna As Long, iteraciones As Long, columna_plantilla As Long) As Long
'inicializo la variable resultado
Dim resultado As Long
Dim i As Long
i = fila
resultado = 0
'comienzo el bucle
For i = fila To iteraciones
If Cells(i, columna_plantilla).Value = "SI" And Cells(i, columna).Value = "SI" Then 'criterio que debe cumplir
resultado = resultado + 1
End If
Next
Contar_Polivalencia_verde = resultado
End Function
Os adjunto el archivo de ejemplo para ver si se puede encontrar una solución. Muchas gracias por adelantado.
Tabla Ejemplo.xlsm