Piloter Excel Français Anglais avec C#

AymenEurotech Messages postés 7 Date d'inscription mercredi 2 mai 2007 Statut Membre Dernière intervention 4 mars 2010 - 4 mars 2010 à 10:16
AymenEurotech Messages postés 7 Date d'inscription mercredi 2 mai 2007 Statut Membre Dernière intervention 4 mars 2010 - 4 mars 2010 à 10:19
Bonjour,

Je développe une application winform qui alimente un fichier excel à partir des statistiques d'une base des données et je doit programmer des cellules automatiquement en utilisant la somme ou la fonction SI, sachant que la formule change selon la langue de Excel : (SOMME et SI) si c'est français et (SUM et IF) si c'est anglais.

Exemple de mon code:

Excel.Range aRange = new ....
aRange.Cells[6,"G"] = "=SOMME(E1:E8)"; //Si la version d'Excel installé est Français.
aRange.Cells[6,"G"] = "=SUM(E1:E8)"; //Si la version d'Excel installé est Anglais.
aRange.Cells[10,"G"]="SI(G2>0;G8/G2;0)"; //Si la version d'Excel installé est Français.
aRange.Cells[10,"G"]="IF(G2>0;G8/G2;0)"; //Si la version d'Excel installé est Anglais.

Les 3 primières lignes de programmation de cellule fonctionnent inpec, mais le 4èmes ligne ( "=IF(...)") lance une Excception "HRESULT: 0*800A03EC"
Je n'ai pas trouver une solution à ce problème, si vous avez eu le problème ou vous avez une solution veuillez m'aider

Merci
Aymen

1 réponse

AymenEurotech Messages postés 7 Date d'inscription mercredi 2 mai 2007 Statut Membre Dernière intervention 4 mars 2010 1
4 mars 2010 à 10:19
Re;
Il ya une faute de frappe dans mon exemple, il manque "=" avant Si et IF ça doit ètre :

Excel.Range aRange = new ....
aRange.Cells[6,"G"] = "=SOMME(E1:E8)"; //Si la version d'Excel installé est Français.
aRange.Cells[6,"G"] = "=SUM(E1:E8)"; //Si la version d'Excel installé est Anglais.
aRange.Cells[10,"G"]="=SI(G2>0;G8/G2;0)"; //Si la version d'Excel installé est Français.
aRange.Cells[10,"G"]="=IF(G2>0;G8/G2;0)"; //Si la version d'Excel installé est Anglais.

Aymen
0