Gracias Gustavo, por lo que entiendo es un COM Add-in, ya que es una Función 
Nativa de Excel.
 
Saludos
 


From: [email protected]
To: [email protected]
Subject: [puntonet] RE: [puntonet] Pegar función desde C# en una celda de Excel.
Date: Tue, 15 Feb 2011 18:00:35 -0300






Hola Javier:
 
Lo primero que se me ocurre es que la fórmula se esté evaluando antes de que se 
cargue el Add-in.
¿Se trata de un Excel Add-in (archivo *.xlam) o de un COM Add-in?
 
Seguimos, Gus
 


From: [email protected] [mailto:[email protected]] On Behalf Of Javier 
Osvaldo Chércoles
Sent: lunes, 14 de febrero de 2011 15:38
To: [email protected]
Subject: [puntonet] Pegar función desde C# en una celda de Excel.
 


 Estimados, después de mucho intentar los molesto a Uds. Estoy creando y 
escribiendo un archivo de Excel desde una aplicación en C#, a modo de reporte. 
En el mismo pego en una celda la función NETWORKDAYS() para calcular los días 
laborales transcurridos entre dos fechas. En la celda donde pego esto me da el 
error #NAME?, que si le quito el tilde en la ventana de Add-in y lo vuelvo a 
tildar y hago un recalculo sobre la formula, devuelve el valor. Probe con otras 
funciones y me sucedio lo mismo, pero cuando cambie la "cultura" comenzaron a 
funcionar, pero con NETWORKDAYS(), no puedo lograrlo. En el Excel esta activado 
el Add-in que necesita para usar la función, y si no lo quito, lo vuelvo a 
poner y recalculo sobre cada celda, no me sirve presionar F9, tengo que hacer 
F2 (Editar) y aceptar para que tome el valor. 
 
Lo que pego en la celda es:
 
rng y rng2 son rangos definidos de una celda, para pegar la función.
rng.FormulaR1C1 = "=NETWORKDAYS(" + rng2.get_Address((object)f, 
(object)iColDestine, Excel.XlReferenceStyle.xlR1C1, Missing.Value, 
Missing.Value) + ", TODAY(), 1)";
 
En la celda escrito veo:
 
=NETWORKDAYS($G$2; TODAY(); 1)
 
Pero aparece el error #NAME?
 
Si quiero leer la celda desde VBA, me da Error 2029 o Run-time error '13': Type 
Mismatch.
 
Gracias a cualquier ayuda.
 
Javier O. Chércoles


                                          

Responder a