Macro en excel
Publicado por Marcos Romero (1 intervención) el 31/10/2002 17:37:44
Urgente
Hola a todos. Estoy creando una macro en excel pero cómo hago para que funcione un IF anidado con Buscarv, concatenar, and. Cuando ejecuto la fórmula en excel no tengo problema pero cuando la grabo en una macro y VB me lo "traduce" lo hace incompletamente y no lo ejecuta. He intentado por ejemplo con :
Range("K2").Formula = "SI(ESERROR(BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0));"""";SI(Y(BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0)="""";BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;11;0)="""")=VERDADERO;"""";SI(BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0)="""";SI(BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;11;0)<>"""";BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;11;0);BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0));BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0))))"
pero al ejecutar la macro me escribe en la celda como si fuera un texto (porque no tiene el "=" ) sin embargo cuando lo pongo me sale error y no lo ejecuta.
La pregunta es porqué esta formula si la ejecuta y la mencionada arriba no:
Range("K2").Formula = "=IF(ISERROR(VLOOKUP(RC9,'[registro de OTs.xls]maeots'!C7:C38,32,0)),"""",VLOOKUP(RC9,'[registro de OTs.xls]maeots'!C7:C38,32,0))".
Esta ultima la grabe cuando escribi la siguiente formula
=SI(ESERROR(BUSCARV($I2;'[registro
Hola a todos. Estoy creando una macro en excel pero cómo hago para que funcione un IF anidado con Buscarv, concatenar, and. Cuando ejecuto la fórmula en excel no tengo problema pero cuando la grabo en una macro y VB me lo "traduce" lo hace incompletamente y no lo ejecuta. He intentado por ejemplo con :
Range("K2").Formula = "SI(ESERROR(BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0));"""";SI(Y(BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0)="""";BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;11;0)="""")=VERDADERO;"""";SI(BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0)="""";SI(BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;11;0)<>"""";BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;11;0);BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0));BUSCARV($I2;'[registro de OTs.xls]maeots'!$G:$AL;9;0))))"
pero al ejecutar la macro me escribe en la celda como si fuera un texto (porque no tiene el "=" ) sin embargo cuando lo pongo me sale error y no lo ejecuta.
La pregunta es porqué esta formula si la ejecuta y la mencionada arriba no:
Range("K2").Formula = "=IF(ISERROR(VLOOKUP(RC9,'[registro de OTs.xls]maeots'!C7:C38,32,0)),"""",VLOOKUP(RC9,'[registro de OTs.xls]maeots'!C7:C38,32,0))".
Esta ultima la grabe cuando escribi la siguiente formula
=SI(ESERROR(BUSCARV($I2;'[registro
Valora esta pregunta


0