Macro Change Devise (Euro,USD,CHF)

chiheb1920

XLDnaute Junior
Salut le forum

Je suis dsl d'ouvrir un autre sujet car je crois le titre de mon ancien n'est plus à jour avec mon probléme c'est pour ça que je n'est eu aucune réponse suffisante et je compte sur votre aide les amis pour m'en sortir alors ne me laisser pas tomber svp

Mon probléme est le suivant

je le decompose pour qu'il soit simple

j'ai une liste déroulante de devise ( Euro, USD, CHF)
Un tableau ou je saisie des valeurs

Je veux qu'on changeant la devise sur la liste deroulante les montants dans le tableau change selon la devise

Certains mon proposé de de faire un autre tableau dans une deuxième feuille et faire des formules sur les cellules ça marche mais l'inconvénient que j'ai enormement de tableau et ça va pas se faire de tous les dupliqués et appliqué ces formules sur tout les cellule

J'aimerai bien savoir s'il existe un macro qui peut m'assurer cette fonctionnalité

Les amis j'ai vraiment besoin de se fichier svp aider moi

Le fichier que j'ai jusqu'a maintenant me permet juste de convertir le format je le met ci joint
 

Pièces jointes

  • Devise.xls
    41.5 KB · Affichages: 566
  • Devise.xls
    41.5 KB · Affichages: 583
  • Devise.xls
    41.5 KB · Affichages: 599

Pierrot93

XLDnaute Barbatruc
Re : Macro Change Devise (Euro,USD,CHF)

Bonjour Chiheb, bhbh

utilises le underscore ( "_" touche 8 en minuscule) précédé d'un espace , comme ci dessous :

Code:
With Union(Union(Range("C16"), Range("C21")), [COLOR="Red"][B]_[/B][/COLOR]
    Union(Range("C19"), Range("C27")) [COLOR="red"][B]_[/B][/COLOR]

bonne journée
@+
 

chiheb1920

XLDnaute Junior
Re : Macro Change Devise (Euro,USD,CHF)

Merci bhbh , Merci Pierrot , Merci le forum

Pierrot la méthode que tu ma recommandé fonctionnais bien au début jusqu'a arrivé a une certaine ligne il m'indique un message d'erreur

voila le code
Code:
With Union(Union(Range("C15:C24"), Range("C26:C29"), Range("E15:E24"), Range("E26:E29"), Range("G15:G24"), Range("G26:G29"), Range("I15:I24"), Range("I26:I29"), Range("K15:K24"), Range("K26:K29"), Range("M15:M24"), Range("M26:M29"), Range("O15:O24"), Range("O26:O29"), Range("Q15:Q24"), Range("Q26:Q29"), Range("S15:S24"), Range("S26:S29")), _
Union(Range("C40:C49"), Range("C51:C54"), Range("E40:E49"), Range("E51:E54"), Range("G40:G49"), Range("G51:G54"), Range("I40:I49"), Range("I51:I54"), Range("K40:K49"), Range("K51:K54"), Range("M40:M49"), Range("M51:M54"), Range("O40:O49"), Range("O51:O54"), Range("Q40:Q49"), Range("Q51:Q54"), Range("S40:S49"), Range("S51:S54")), _
Union(Range("C65:C74"), Range("C76:C79"), Range("E65:E74"), Range("E76:E79"), Range("G65:G74"), Range("G76:G79"), Range("I65:I74"), Range("I76:I79"), Range("K65:K74"), Range("K76:K79"), Range("M65:M74"), Range("M76:M79"), Range("O65:O74"), Range("O76:O79"), Range("Q65:Q74"), Range("Q76:Q79"), Range("S65:S74"), Range("S76:S79")), _
Union(Range("C90:C99"), Range("C101:C104"), Range("E90:E99"), Range("E101:E104"), Range("G90:G99"), Range("G101:G104"), Range("I90:I99"), Range("I101:I104"), Range("K90:K99"), Range("K101:K104"), Range("M90:M99"), Range("M101:M104"), Range("O90:O99"), Range("O101:O104"), Range("Q90:Q99"), Range("Q101:Q104"), Range("S90:S99"), Range("S101:S104")), _
Union(Range("C121:C130"), Range("C132:C135"), Range("E121:E130"), Range("E132:E135"), Range("G121:G130"), Range("G132:G135"), Range("I121:I130"), Range("I132:I135"), Range("K121:K130"), Range("K132:K135"), Range("M121:M130"), Range("M132:M135"), Range("O121:O130"), Range("O132:O135"), Range("Q121:Q130"), Range("Q132:Q135"), Range("S121:S130"), Range("S132:S135")), _
Union(Range("C146:C155"), Range("C157:C160"), Range("E146:E155"), Range("E157:E160"), Range("G146:G155"), Range("G157:G160"), Range("I146:I155"), Range("I157:I160"), Range("K146:K155"), Range("K157:K160"), Range("M146:M155"), Range("M157:M160"), Range("O146:O155"), Range("O157:O160"), Range("Q146:Q155"), Range("Q157:Q160"), Range("S146:S155"), Range("S157:S160")), _
Union(Range("C180:C189"), Range("C191:C194"), Range("E180:E189"), Range("E191:E194"), Range("G180:G189"), Range("G191:G194"), Range("I180:I189"), Range("I191:I194"), Range("K180:K189"), Range("K191:K194"), Range("M180:M189"), Range("M191:M194"), Range("O180:O189"), Range("O191:O194"), Range("Q180:Q189"), Range("Q191:Q194"), Range("S180:S189"), Range("S191:S194")), _

Je compile jusqu'à la ligne 17 ça marche parfaitement mais dés que je dépasse vers la 18éme voir 19éme ligne il y'a un message d'erreur qui apparait
le voila


Pierrot , le forum si vous connaissez la cause de se bug aider moi svp
Merci beaucoup
 
Dernière édition:

jeanpierre

Nous a quitté
Repose en paix
Re : Macro Change Devise (Euro,USD,CHF)

Bonsoir chiheb1920, bhbh, Pierrot,

Remettre un fichier fonctionnel à jour à cet instant, le zipper car je pense qu'il va déborder le poids autorisé sinon.

Car te dire sur une simple ligne, et un message souvent rencontré, ne suffit pas.

A te lire.

Jean-Pierre
 

chiheb1920

XLDnaute Junior
Re : Macro Change Devise (Euro,USD,CHF)

Bonsoit Jeanpierre , le forum

en PJ j'ai mis mon fichier et comme vous le constateriez que jusqu'a la ligne

http://cjoint.com/?ipbWRfRXTZ

Code:
Union(Range("C476:C485"), Range("C487:C490"), Range("E476:E485"), Range("E487:E490"), Range("G476:G485"), Range("G487:G490"), Range("I476:I485"), Range("I487:I490"), Range("K476:K485"), Range("K487:K490"), Range("M476:M485"), Range("M487:M490"), Range("O476:O485"), Range("O487:O490"), Range("Q476:Q485"), Range("Q487:Q490"), Range("S476:S485"), Range("S487:S490")), _
ça marche trés bien mais dés que j'ajoute une nouvelle ligne similaire à ceux d'avant par exemple
Code:
Union(Range("C5O1:C510"), Range("C512:C515"), Range("E5O1:E510"), Range("E512:E515"), Range("G5O1:G510"), Range("G512:G515"), Range("I5O1:I510"), Range("I512:I515"), Range("K5O1:K510"), Range("K512:K515"), Range("M5O1:M510"), Range("M512:M515"), Range("O5O1:O510"), Range("O512:O515"), Range("Q5O1:Q510"), Range("Q512:Q515"), Range("S5O1:S510"), Range("S512:S515")))

Un message d'erreut _Worksheet apparait

Avez vous une solution a mon probléme les amis pour que je puisse terminer mon travail aidez moi svp
 

pierrejean

XLDnaute Barbatruc
Re : Macro Change Devise (Euro,USD,CHF)

bonjour chiheb1920
Salut Pierrot
Salut bhbh
Salut jeanpierre

Une autre approche

Veiller a garder en format Standard les cellules non concernées par les devises

Et a tester !!!

Attention les chiffres d'origine ont pu etre modifiés par des tests intermediaires !!!
 

Pièces jointes

  • EBBV1.zip
    117.4 KB · Affichages: 43
  • EBBV1.zip
    117.4 KB · Affichages: 42
  • EBBV1.zip
    117.4 KB · Affichages: 46

chiheb1920

XLDnaute Junior
Re : Macro Change Devise (Euro,USD,CHF)

Bonjour Pierrejean
Salut Pierrot
Salut bhbh
Salut jeanpierre

Désoler Pierrejean mais le fichier que tu ma recommander change complétement le mien mais en plus il y a des formules dans que je peux pas appliquer le macro
c'est pour ça comme tu voix dans mon code je procédé par petite plage de cellule et cette solution marche parfaitement le seul inconvénient que a certain moment en procédant par la même méthode et en arrivant au 18éme tableau ça bloque et le message d'erreur apparait malgré que j'ajoute la meme ligne que les précédentes

J'espère une solution qui me permet de continué dans la même démarche et en plus il me reste que 7 tableaux seulement alors pourquoi changer complètement la méthode

J'espère que mon problème est claire et je suis disponible pour éclaircir le problème si c'est pas assez claire

Merci de bien vouloir m'aider les amis
 

pierrejean

XLDnaute Barbatruc
Re : Macro Change Devise (Euro,USD,CHF)

Re

Pourquoi changer la methode ????

Tout simplement parce qu'elle ne marche pas !!

Voci une version qui preserve les formules

A tester bien entendu !!
 

Pièces jointes

  • EBBV1.zip
    118.6 KB · Affichages: 26
  • EBBV1.zip
    118.6 KB · Affichages: 29
  • EBBV1.zip
    118.6 KB · Affichages: 32

chiheb1920

XLDnaute Junior
Re : Macro Change Devise (Euro,USD,CHF)

Merci Pierrejean , le forum

merci Pierrejean pour l'effort que ta fournis afin de m'aider j'ai tester ta méthodes elle est pas mal mais il y a quelques lacunes
*lorsque je change d'une devise a une autre puis je reviens a l'ancienne devise le montant ne reste pas exactement le même il y a des virgules qui s'ajoutent et ça avec l'ancienne méthodes ça se fesais pas malgrés que j'ai pas changer les taux de change
* le temps de reponses est plus long
* dans les résultats ils y ont a celles qui s'affichent avec le formats et le sigle de la monnaies et d'autres non

Pierrejean tu est expert dans la matiére peut tu m'aider a continué mon travail avec la méthode avec laquelle j'ai commencer et si c'est pas faisable je peut savoir c'est quoi l'inconvénient

Merci beaucoup Pierrejean , le forum j'apprends beaucoup de choses grâce a vous
 

pierrejean

XLDnaute Barbatruc
Re : Macro Change Devise (Euro,USD,CHF)

Re

Désolé mais ta methode a montré les limites d'Excel en ce qui concerne les Union(....)

Quant a la mienne, je l'ais revue pour ne plus avoir d'erreur au retour a la devise d'origine

Pour les cellules ou aucun format monetaire n'est en place cela provient du fait qu'il n'y en avait pas a l'origine

J'en ais remis quelques-un , je te laisse mettre les autres

Quant au temps de reponse , je suis désolé mais je n'y peux rien !!!
 

Pièces jointes

  • EBBV1.zip
    119.3 KB · Affichages: 29
  • EBBV1.zip
    119.3 KB · Affichages: 31
  • EBBV1.zip
    119.3 KB · Affichages: 26

pierrejean

XLDnaute Barbatruc
Re : Macro Change Devise (Euro,USD,CHF)

Re

Nouveau fichier:
Il y avait une erreur dans le passage de DTN a CHF
Par ailleurs , aucune de mes tentatives de reduction du temps de reponse n'a eu de succès
 

Pièces jointes

  • EBBV1.zip
    119.5 KB · Affichages: 45
  • EBBV1.zip
    119.5 KB · Affichages: 49
  • EBBV1.zip
    119.5 KB · Affichages: 51

valentingu

XLDnaute Nouveau
Re : Macro Change Devise (Euro,USD,CHF)

Bonjour à tous !

Je sais que remonter un sujet de cette manière n'est pas particulièrement apprécié mais le sujet correspondant parfaitement à mon problème, je préfère un up à un doublon.
Travaillant actuellement sur un business plan pour mon entreprise, je suis intéressé par l'outil que vous proposez afin de changer automatiquement les devises de mes tableaux.
Cependant étant novice en macros et en programmation, je dois avouer que votre vocabulaire me perd.
Le fichier que vous avez poster Pierrejean pourrait-il être appliqué tel quel à d'autre tableau ou les formules derrière la macro sont définis en fonction du fichier de base ?

Je vous remercie par avance !
Valentin
 

pierrejean

XLDnaute Barbatruc
Re : Macro Change Devise (Euro,USD,CHF)

Bonjour valentigu

Il y a nécessairement une adaptation minimum à faire en fonction des cellules susceptibles de recevoir des devises
Le mieux est de disposer d'un fichier exemple (dénué de données confidentielles ) situant ton problème
 

valentingu

XLDnaute Nouveau
Re : Macro Change Devise (Euro,USD,CHF)

Bonjour Pierrejean,

Merci de votre réponse rapide. Malheureusement ma direction m'interdit de poster quelque document qu'il soit et il semblerait que je ne vous ait donc déranger pour rien.

Merci tout de même pour votre aide, je vous souhaite une excellente journée.
 

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote