Excel: entrer des formules en anglais avec Excel en français [Résolu]

WishhhMaster 327 Messages postés mardi 17 février 2004Date d'inscription 10 avril 2010 Dernière intervention - 1 juin 2008 à 08:34 - Dernière réponse : WishhhMaster 327 Messages postés mardi 17 février 2004Date d'inscription 10 avril 2010 Dernière intervention
- 1 juin 2008 à 14:40
Salut,

Je genère un document Excel à partir d'un programme C#. Dans ce document, il y a des formules. Comment entrer ces formules dans mon code C# pour que:
-si le programme tourne sur un pc avec un Excel Fr, alors ça génère les formules en fr
-si le programme tourne sur un pc avec un Excel anglais, alors ça génère les formules en anglais?

Si je fais

string formule = "=NB(A1:A10)";
_currentWorkSheet.Cells[1, 1] = formule;
Alors ça marche sur mon pc qui a les paramètres régionaux à FR, mais ça ne marche pas sur un pc dont les paramètres sont mis à Anglais.

Mais si je fais


string formule = "=Count(A1:A10)";

_currentWorkSheet.Cells[1, 1] = formule;
alors, ça ne marche pas sur mon pc avec paramètres fr (ça me genère une exception COM)

J'ai aussi essayé, sans succès:

((Excel.Range)_currentWorkSheet.Cells[1, 1]).Formula = formule; (exception COM si la formule est en anglais sur mon pc fr)

et

((Excel.Range)_currentWorkSheet.Cells[1, 1]).FormulaLocal = formule; (pas d'exception, mais Excel ne reconnaît pas la formule et m'affiche #NOM? dans la cellule si la formule est en anglais)

Dans l'idéal, je voudrais pouvoir rentrer la formule en anglais dans mon code et qu'excel se charge du reste.

Quelqu'un a une idée?
Merci
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
WishhhMaster 327 Messages postés mardi 17 février 2004Date d'inscription 10 avril 2010 Dernière intervention - 1 juin 2008 à 14:40
3
Merci
J'ai trouvé:

Il faut d'abord mettre la culture du thread en anglais US (pas NZ, GB ou autre! US!), puis écrire la formule an anglais, et finalement l'intégrer comme ça:

((Excel.Range)_currentWorkSheet.Cells[rowIndex, colIndex]).Formula = formula;

Puis après Excel se charge de traduire la formule si il n'est pas installé en anglais.

Merci WishhhMaster 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 99 internautes ce mois-ci

Commenter la réponse de WishhhMaster
WishhhMaster 327 Messages postés mardi 17 février 2004Date d'inscription 10 avril 2010 Dernière intervention - 1 juin 2008 à 08:37
0
Merci
J'ai aussi essayé de jouer avec la culture du thread courant, mais sans grand succès non plus.
Commenter la réponse de WishhhMaster

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.