Probleme de langue dans une formule

  • Initiateur de la discussion Initiateur de la discussion NewNewbie
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

NewNewbie

Guest
Bonjour à tous,

A l'ouverture d'un fichier,

je voudrais mettre à jour la mise en forme conditionnelle pour une plage de cellule de mon classeur.

J'ai pour cela créé une petite macro. Mais celle ci a un comportement bizarre!

Sous certaines conditions, excel attend la formule de mise en forme conditionnelle en Français et sous d'autres, il l'attend en anglais...

Ouverture du fichier depuis l'explorateur par double clic sur le fichier => Formules en anglais
Ouverture du fichier depuis excel (menu fichier ouvrir) => Formules en français
Ouverture du fichier depuis la commande exécuter (excel d:\\MiseEnFormeCdt) => Formules en français

Existe-t-il un paramètre qui me permette de savoir comment appliquer le format de mise en forme conditionnelle?

D'avance merci

@+ NewNewbie [file name=MiseEnFormeCdt.zip size=11020]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/MiseEnFormeCdt.zip[/file]
 

Pièces jointes

Pour info,

Les tests que j'ai effectué l'ont été sur:
Win 98 et excel 2000
Win 2000 et excel 97

Dans les 2 cas, même message d'erreur...

Est ce que quelqu'un pourrait tester sous XP pour voir si ça passe.?

@+ NewNewbie
 
Bonsoir, et merci d'avoir réagi Hervé

Je reprécise un petit peu mon problème:

Le texbox qui s'affiche à l'écran lors de l'ouverture du fichier n'est là que pour mettre en évidence mon pb. Sur l'application défénitive, il aura disparu.

La formule en français (configuration de mon ordi) fonctionne toujours SAUF quand j'ouvre mon fichier directement depuis l'explorateur (double clic). As-tu réussi à reproduire le pb??
Lorsque je l'ouvre de cette manière, il faut que j'utilise la formule anglaise pour qu'excel ne m'insulte pas méchamment:
'Appel de procédure ou argument incorrect (erreur 5)' et applique le format conditionnel.

Comment faire pour auchoix:
Utiliser la bonne fonction suivant la manière dont est ouvert le fichier?
Trouver une fonction qui marche à tous les coups?

@+ NewNewbie
 
Bonjour newNewBie, Hervé

Très étrange en effet, moi je jongle entre diverses machines FR ou US tout au long de la journée, jamais vu ça...

Normalement si tu utilises la Syntax Range('A1').Formula = '=Formula in English' tu ne devrais avoir aucun problème, car la Propriété Formula renvoie ou définit la formule de l'objet dans le style de référence A1 en anglais.

Sinon tu as 'FormulaLocal' qui renvoie ou définit la formule de l'objet, en utilisant les références du style A1 dans le langage de l'utilisateur.

Sinon je donne ma langue au chat, ou alors tu as deux versions d'Excel sur ta Machine (faire une vérif)...

Bonne soirée
@+Thierry
 
re à vous deux

Vraiment bizarre, je suis sous XP, après avoir lancé ta macro corrigé en anglais, je n'ai plus de bug, mais elle ne fait rien ????

Elle me place bien en mefc la formule indiqué, mais elle ne me colore pas les lignes.

Par contre aucun souci avec la macro francaise.

Et ceci que je lance de n'importe quelle manière.

Mais au faite, elle te sert à quoi cette macro ?

Ne pourrais tu pas tout faire en VBA ou en MEFC, parce que panaché les deux, c'est pas génial.

a plus
 
re

Si tu cherches une macro pour colorier en gris une ligne sur deux d'une sélection, en voilà une :



Public Sub vev()
Dim i As Integer
Dim j As Integer
For i = Selection.Row To Selection.Row + Selection.Rows.Count - 1 Step 2
For j = Selection.Column To Selection.Column + Selection.Columns.Count - 1
Cells(i, j).Interior.ColorIndex = 15
Next j
Next i
End Sub



A plus...

Message édité par: Hervé, à: 15/03/2005 00:25
 
re

Et pourquoi toujours du gris, 🙂

Après tout le printemps est à nos portes.

Alors vive les couleurs aléatoires

Public Sub vev()
Dim i As Integer
Dim j As Integer
Dim couleur As Byte

For i = Selection.Row To Selection.Row + Selection.Rows.Count - 1 Step 2
Randomize
couleur = Int((56 * Rnd) + 1)
For j = Selection.Column To Selection.Column + Selection.Columns.Count - 1
Cells(i, j).Interior.ColorIndex = couleur
Next j
Next i
End Sub

a plus

Message édité par: Hervé, à: 15/03/2005 00:34
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
377
Retour