Remplir une cellule Excel par programme avec une formule IF ne fonctionne pas
-
20-12-2019 - |
Question
J'essaie de remplir une cellule Excel 2010 par programme via COM Interop, avec une chaîne qui représente une formule IF.
La ligne de code suivante fonctionne très bien, elle donne la valeur 4 dans Excel :
.Range("C10").Value = "=2+2"
mais quand je passe une formule IF (sous forme de chaîne)...
.Range("C11").Value = "=IF(1+1=2;2;0)"
...je tombe sur un COMException
, en disant: Exception from HRESULT: 0x800A03EC
.
Si je saisis la même formule IF directement dans Excel, elle est analysée correctement.
Merci pour votre aide!
Chris
La solution
Vous devez remplacer les points-virgules par des virgules et utiliser .Formula
plutôt .Value
.Range("C11").Formula= "=IF(1+1=2,2,0)"
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow