Pregunta

Estoy intentando llenar una celda de Excel 2010 mediante programación a través de COM Interop, con una cadena que representa una fórmula IF.

La siguiente línea de código funciona bien, se resuelve en el valor 4 en Excel:

 .Range("C10").Value = "=2+2"

pero cuando paso una fórmula IF (como cadena)...

 .Range("C11").Value = "=IF(1+1=2;2;0)"

...me encuentro con un COMException, dicho: Exception from HRESULT: 0x800A03EC.

Si ingreso la misma fórmula IF directamente en Excel, se analiza correctamente.

¡Gracias por tu ayuda!

cris

¿Fue útil?

Solución

Debes reemplazar el punto y coma con comas y usar .Formula en cambio .Value

.Range("C11").Formula= "=IF(1+1=2,2,0)"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top