Fórmula "If" con una macro
Hola experto! Espero que me puedas ayudar con esto:
Necesito hacer una macro que calcule porcentajes de acuerdo al tipo de empleado y coloco lo siguiente:
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = _
"=IF(RC[-11]=RC[-9],RC[-1],IF(RC[-10]=""socio"",RC[-2] *DatosBásicos!c12*(1-DatosBásicos!c5),IF(RC[-10]=""asociado"",RC[-2]*DatosBásicos!c12*(1-DatosBásicos!c6),IF(RC[-10]=""externo"",RC[-2]*DatosBásicos!c12*(1-DatosBásicos!c7)))))"
ActiveCell.Offset(0, 1).Select
Pero cuando la ejecuto, me coloca lo siguiente en la celda:
=SI(E8=G8;O8;SI(F8="socio";N8*(+DatosBásicos!$L:$L)*(1-DatosBásicos!$E:$E);SI(F8="asociado";N8*DatosBásicos!$L:$L*(1-DatosBásicos!$F:$F);SI(F8="externo";N8*DatosBásicos!$L:$L*(1-DatosBásicos!$G:$G))))
Es decir, no toma bien la celda que necesito que utilice para el cálculo.
¿Dónde está mi error?
Te agradezco desde ya muchísimo por tu tiempo.
María
Necesito hacer una macro que calcule porcentajes de acuerdo al tipo de empleado y coloco lo siguiente:
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = _
"=IF(RC[-11]=RC[-9],RC[-1],IF(RC[-10]=""socio"",RC[-2] *DatosBásicos!c12*(1-DatosBásicos!c5),IF(RC[-10]=""asociado"",RC[-2]*DatosBásicos!c12*(1-DatosBásicos!c6),IF(RC[-10]=""externo"",RC[-2]*DatosBásicos!c12*(1-DatosBásicos!c7)))))"
ActiveCell.Offset(0, 1).Select
Pero cuando la ejecuto, me coloca lo siguiente en la celda:
=SI(E8=G8;O8;SI(F8="socio";N8*(+DatosBásicos!$L:$L)*(1-DatosBásicos!$E:$E);SI(F8="asociado";N8*DatosBásicos!$L:$L*(1-DatosBásicos!$F:$F);SI(F8="externo";N8*DatosBásicos!$L:$L*(1-DatosBásicos!$G:$G))))
Es decir, no toma bien la celda que necesito que utilice para el cálculo.
¿Dónde está mi error?
Te agradezco desde ya muchísimo por tu tiempo.
María
1 respuesta
Respuesta de mrtool
1