Macro para insertar fórmula en hoja excel

Estoy intentando insertar esta fórmula en una macro excel pero me da error 1004.
La formula es: ActiveCell.FormulaR1C1 = "=IF(ISNA(VLOOKUP(RC[+1];Anterior!C[+2]:C[+9];2;0));""N"";IF(RC[+2]&RC[+3]&RC[+4]&RC[+5]&RC[+6]&RC[+7]&RC[+8]&RC[+9]<>(VLOOKUP(RC[+1];Anterior!C[+2]:C[+9];2;0)&VLOOKUP(RC[+1];Anterior!B:J;3;0)&VLOOKUP(RC[+1];Anterior!B:J;4;0)&VLOOKUP(RC[+1];Anterior!B:J;5;0)&VLOOKUP(RC[+1];Anterior!B:J;6;0)&VLOOKUP(RC[+1];Anterior!B:J;7;0)&VLOOKUP(RC[+1];Anterior!B:J;8;0)&VLOOKUP(RC[+1];Anterior!C[+2]:C[+9];9;0));""C"";""))"
Lo que tiene que hacer es lo siguiente: Me posiciono en la celda A9. La fórmula tiene que ver si ha habido cambios en las celdas C9&D9&E9&F9&G9&H9&I9&j9 con respecto a la búsqueda del valor de B9 en la hoja "Anterior" recuperando el valor de la celda C9 & el valor de la celda D9 & el valor de la celda E9...
Es decir quiero que me busque Pepe que esta escrito en la celda B9. Las columnas de la C a la J tiene datos personales, por ejemplo, edad, calle, numero... Si ejecuto la macro y se ha actualizado la edad de pepe o ha cambiado de vivienda o cualquier otra situación quiero que me ponga una C. En cambio si pepe no existía en la hoja "Anterior" quiero que me ponga N. Y si pepe sigue teniendo la misma edad y vive en el mismo lugar quiero que me ponga "", es decir, nada.
¿Cómo podría hacerlo?

1 respuesta

Respuesta
Dos preguntas que me surgen, la fórmula es demasiado larga como para comprobarla sin la hoja 'buena'
¿Por que insertas la fórmula dinámicamente'
¿Por qué no haces una función que te compare los valores directamente?, creo que seria más sencillo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas