recalculo de funciones propias
Publicado por Pablo (2 intervenciones) el 25/10/2009 09:21:15
He creado una función que me permite saber el porcentaje de comisión que debo aplicar en función del comercial que la realiza y el tipo de cliente. Es una tontería, leo los datos de una tabla y los comparo con otra, donde tengo esos porcentajes.
La función es:
Function porcentaje_comision(quien, que)
' Cálculo del porcentaje de comisión que procede en cada caso.
Dim comercial As Range
Dim dln As Range
Set comercial = Worksheets("hoja3").Range("b3:h20")
Set dln = Worksheets("hoja3").Range("j3:k8")
If quien = "" Then
porcentaje_comision = ""
Else
donde = Application.WorksheetFunction.VLookup(que, dln, 2, falso)
porcentaje_comision = Application.WorksheetFunction.VLookup(quien, comercial, donde, falso)
End If
End Function
Pero me he dado cuenta de que si cambio algún dato en la tabla de los porcentajes, en hoja3 en mi caso, no se recalcula en la tabla original ni pulsando F9.
Esa misma función la tenía escrita en cada celda y si realizaba algún cambio en la tabla de comisiones se recalculaba automáticamente.
¿Como puedo recalcular toda la columna si necesito realizar algún cambio?
Mi versión de excel es la 2003.
La función es:
Function porcentaje_comision(quien, que)
' Cálculo del porcentaje de comisión que procede en cada caso.
Dim comercial As Range
Dim dln As Range
Set comercial = Worksheets("hoja3").Range("b3:h20")
Set dln = Worksheets("hoja3").Range("j3:k8")
If quien = "" Then
porcentaje_comision = ""
Else
donde = Application.WorksheetFunction.VLookup(que, dln, 2, falso)
porcentaje_comision = Application.WorksheetFunction.VLookup(quien, comercial, donde, falso)
End If
End Function
Pero me he dado cuenta de que si cambio algún dato en la tabla de los porcentajes, en hoja3 en mi caso, no se recalcula en la tabla original ni pulsando F9.
Esa misma función la tenía escrita en cada celda y si realizaba algún cambio en la tabla de comisiones se recalculaba automáticamente.
¿Como puedo recalcular toda la columna si necesito realizar algún cambio?
Mi versión de excel es la 2003.
Valora esta pregunta
0