OVH Cloud OVH Cloud

Le retour aux francs :-)))

10 réponses
Avatar
géjoun.
Salut!

On me demande de chercher une façon pour reproduire et traduire
"instantanément" en Francs (et oui, on avance pas vite par chez nous! ;-)
une fiche complétée en Euros.
Cette fiche possède certaines cellules qui correspondent à des montants
(donc, en euros), et d'autres cellules qui sont des coef, des
surfaces...etc...(à ne pas traduire).
Je me demandais si il serait possible, pour obtenir à partir du tableau en
euros un tableau en francs, d'avoir une macro qui ferait ceci :

- 1/ Je sélectionne l'ensemble de mon tableau à reproduire
- 2/ Grace à un bouton affecté à une macro, j'obtiens un copié du tableau
(je parle ici de bouton car je ne sais pas si pour la suite de mon idée, il
ne faudrait pas affecter une macro pour faire un copié spécial...)
- 3/ Je me positionne dans une cellule vide en dessous du tableau original
- 4/ Grace à un 2ème bouton, cela me fait le collé de mon 1er tableau, mais
en traduisant les cellules qui sont à passer en francs, et c'est là que j'ai
un doute sur la faisabilité de mon idée. Est-il possible de différencier les
cellules qui sont à traduire suivant la couleur du remplissage de leur fond?
Une macro pourrait-elle faire ça? (de répérer et convertir en multipliant
par 6.55957 uniquement les cellules ayant un fond "rouge" par exemple).

Ou sinon, si l'un d'entre vous à une idée plus simple que ça....

Merci à tous!

--
__________________________
Géjoun.
dam-mail2004@ifrance.com
····················································
Enlevez l'année pour répondre...
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

10 réponses

Avatar
Philippe.R
Bonjour,
Ce code applique le coefficient multiplicateur aux cellules rouges :

Sub mult()
For Each c In Selection
If c.Interior.Color = vbred Then
c.Value = c.Value * 6.55957
End If
Next c
End Sub

--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"géjoun." a écrit dans le message de
news:
Salut!

On me demande de chercher une façon pour reproduire et traduire
"instantanément" en Francs (et oui, on avance pas vite par chez nous! ;-)
une fiche complétée en Euros.
Cette fiche possède certaines cellules qui correspondent à des montants
(donc, en euros), et d'autres cellules qui sont des coef, des
surfaces...etc...(à ne pas traduire).
Je me demandais si il serait possible, pour obtenir à partir du tableau en
euros un tableau en francs, d'avoir une macro qui ferait ceci :

- 1/ Je sélectionne l'ensemble de mon tableau à reproduire
- 2/ Grace à un bouton affecté à une macro, j'obtiens un copié du tableau
(je parle ici de bouton car je ne sais pas si pour la suite de mon idée, il
ne faudrait pas affecter une macro pour faire un copié spécial...)
- 3/ Je me positionne dans une cellule vide en dessous du tableau original
- 4/ Grace à un 2ème bouton, cela me fait le collé de mon 1er tableau, mais
en traduisant les cellules qui sont à passer en francs, et c'est là que j'ai
un doute sur la faisabilité de mon idée. Est-il possible de différencier les
cellules qui sont à traduire suivant la couleur du remplissage de leur fond?
Une macro pourrait-elle faire ça? (de répérer et convertir en multipliant
par 6.55957 uniquement les cellules ayant un fond "rouge" par exemple).

Ou sinon, si l'un d'entre vous à une idée plus simple que ça....

Merci à tous!

--
__________________________
Géjoun.

····················································
Enlevez l'année pour répondre...
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯




Avatar
Michel
Bonjour philippe
Bravo, réponse simple, nette, claire et
précise...
suffit de coloriser les cellules
(je continue à lire les fils, à bientôt)

Philippe.R vient de nous annoncer :
Bonjour,
Ce code applique le coefficient multiplicateur aux
cellules rouges :

Sub mult()
For Each c In Selection
If c.Interior.Color = vbred Then
c.Value = c.Value * 6.55957
End If
Next c
End Sub

--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"géjoun." a écrit dans le
message de
news:
Salut!

On me demande de chercher une façon pour reproduire et
traduire "instantanément" en Francs (et oui, on avance
pas vite par chez nous! ;-) une fiche complétée en
Euros. Cette fiche possède certaines cellules qui
correspondent à des montants (donc, en euros), et
d'autres cellules qui sont des coef, des
surfaces...etc...(à ne pas traduire). Je me demandais
si il serait possible, pour obtenir à partir du
tableau en euros un tableau en francs, d'avoir une
macro qui ferait ceci :

- 1/ Je sélectionne l'ensemble de mon tableau à
reproduire - 2/ Grace à un bouton affecté à une macro,
j'obtiens un copié du tableau (je parle ici de bouton
car je ne sais pas si pour la suite de mon idée, il ne
faudrait pas affecter une macro pour faire un copié
spécial...) - 3/ Je me positionne dans une cellule
vide en dessous du tableau original - 4/ Grace à un
2ème bouton, cela me fait le collé de mon 1er tableau,
mais en traduisant les cellules qui sont à passer en
francs, et c'est là que j'ai un doute sur la
faisabilité de mon idée. Est-il possible de
différencier les cellules qui sont à traduire suivant
la couleur du remplissage de leur fond? Une macro
pourrait-elle faire ça? (de répérer et convertir en
multipliant par 6.55957 uniquement les cellules ayant
un fond "rouge" par exemple).

Ou sinon, si l'un d'entre vous à une idée plus simple
que ça....

Merci à tous!

--
__________________________
Géjoun.

····················································
Enlevez l'année pour répondre...
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯



--
Amicalement
Michel . P


Avatar
Daniel.j
Bonsoir,
cette macro traduit en franc la selection !
Il faut evidement sélectionner les cellules concernées !

Option Explicit
Const TAUX As Single = 6.55957

Sub EuroEnFranc()
Dim Cels As Range
For Each Cels In Selection
If IsNumeric(Cels) Then
Cels.Value = Int((Cels.Value * TAUX) * 100) / 100
Cels.NumberFormat = "# ##0.00" & """ F"";-# ##0.00" & """ F"""
End If
Next
End Sub


--
Daniel MVP Excel
FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm


"géjoun." a écrit dans le message de news:

| Salut!
|
| On me demande de chercher une façon pour reproduire et traduire
| "instantanément" en Francs (et oui, on avance pas vite par chez nous! ;-)
| une fiche complétée en Euros.
| Cette fiche possède certaines cellules qui correspondent à des montants
| (donc, en euros), et d'autres cellules qui sont des coef, des
| surfaces...etc...(à ne pas traduire).
| Je me demandais si il serait possible, pour obtenir à partir du tableau en
| euros un tableau en francs, d'avoir une macro qui ferait ceci :
|
| - 1/ Je sélectionne l'ensemble de mon tableau à reproduire
| - 2/ Grace à un bouton affecté à une macro, j'obtiens un copié du tableau
| (je parle ici de bouton car je ne sais pas si pour la suite de mon idée, il
| ne faudrait pas affecter une macro pour faire un copié spécial...)
| - 3/ Je me positionne dans une cellule vide en dessous du tableau original
| - 4/ Grace à un 2ème bouton, cela me fait le collé de mon 1er tableau, mais
| en traduisant les cellules qui sont à passer en francs, et c'est là que j'ai
| un doute sur la faisabilité de mon idée. Est-il possible de différencier les
| cellules qui sont à traduire suivant la couleur du remplissage de leur fond?
| Une macro pourrait-elle faire ça? (de répérer et convertir en multipliant
| par 6.55957 uniquement les cellules ayant un fond "rouge" par exemple).
|
| Ou sinon, si l'un d'entre vous à une idée plus simple que ça....
|
| Merci à tous!
|
| --
| __________________________
| Géjoun.
|
| ····················································
| Enlevez l'année pour répondre...
| ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
|
|
Avatar
géjoun.
De ces petits doigts, Philippe.R [] a tapoté:

Bonjour,

Si je comprends bien, il faut que j'insère ce code dans une macro si je veux
que ça me convertisse les cellules avec un fond rouge suite à un
copié-collé?
Par contre, j'ai dis une bétise, la couleur des fonds de mes cellules n'est
pas rouge (ça devient illisible), mais de cette couleur
http://cjoint.com/?hnj6dUrH03.
Et est-ce que si certaines cellules ont une mise en forme conditionnelle qui
leur appliquent une couleur tant qu'elle ne sont pas complétées, cela risque
d'empêcher ta macro de fonctionner?

Merci Philippe!

--
__________________________
Géjoun.

····················································
Enlevez l'année pour répondre...
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

|| Bonjour,
|| Ce code applique le coefficient multiplicateur aux cellules rouges :
||
|| Sub mult()
|| For Each c In Selection
|| If c.Interior.Color = vbred Then
|| c.Value = c.Value * 6.55957
|| End If
|| Next c
|| End Sub
||
|| --
|| Amicales Salutations
|| Retirer A_S_ pour répondre.
|| XL 97 / 2000 / 2002
|| Pour suivre le forum :
|| news://msnews.microsoft.com/microsoft.public.fr.excel
|| (Voulez-vous vous abonner ? -> Oui)
Avatar
géjoun.
De ces petits doigts, Daniel.j [] a tapoté:

Bonjour,

Qu'entends-tu par "il faut evidemment sélectionner les cellules concernées"?
On peut faire une sélection globale et la macro repère celles qu'il faut
convertir par rapport à la couleur de remplissage? ou alors il faut
sélectionner une à une les cellules concernées?

--
__________________________
Géjoun.

····················································
Enlevez l'année pour répondre...
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


|| Bonsoir,
|| cette macro traduit en franc la selection !
|| Il faut evidement sélectionner les cellules concernées !
||
|| Option Explicit
|| Const TAUX As Single = 6.55957
||
|| Sub EuroEnFranc()
|| Dim Cels As Range
|| For Each Cels In Selection
|| If IsNumeric(Cels) Then
|| Cels.Value = Int((Cels.Value * TAUX) * 100) / 100
|| Cels.NumberFormat = "# ##0.00" & """ F"";-# ##0.00" & """ F"""
|| End If
|| Next
|| End Sub
||
||
|| --
|| Daniel MVP Excel
|| FAQ du Forum Microsoft Public Fr Excel
|| http://dj.joss.free.fr/faq.htm
||
Avatar
Philippe.R
Bonjour,
Tu as bien compris, tu devras seulement prendre le soin de la lancer depuis Outils / macro / macros
Il faut remplacer :
If c.Interior.Color = vbred Then
par
If c.Interior.Colorindex = 34 Then
Par ailleurs la MEFC devrait rester sans effet sur la macro
--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002

"géjoun." a écrit dans le message de
news:%
De ces petits doigts, Philippe.R [] a tapoté:

Bonjour,

Si je comprends bien, il faut que j'insère ce code dans une macro si je veux
que ça me convertisse les cellules avec un fond rouge suite à un
copié-collé?
Par contre, j'ai dis une bétise, la couleur des fonds de mes cellules n'est
pas rouge (ça devient illisible), mais de cette couleur
http://cjoint.com/?hnj6dUrH03.
Et est-ce que si certaines cellules ont une mise en forme conditionnelle qui
leur appliquent une couleur tant qu'elle ne sont pas complétées, cela risque
d'empêcher ta macro de fonctionner?

Merci Philippe!

--
__________________________
Géjoun.

····················································
Enlevez l'année pour répondre...
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

|| Bonjour,
|| Ce code applique le coefficient multiplicateur aux cellules rouges :
||
|| Sub mult()
|| For Each c In Selection
|| If c.Interior.Color = vbred Then
|| c.Value = c.Value * 6.55957
|| End If
|| Next c
|| End Sub
||
|| --
|| Amicales Salutations
|| Retirer A_S_ pour répondre.
|| XL 97 / 2000 / 2002
|| Pour suivre le forum :
|| news://msnews.microsoft.com/microsoft.public.fr.excel
|| (Voulez-vous vous abonner ? -> Oui)





Avatar
AV
Et est-ce que si certaines cellules ont une mise en forme conditionnelle qui
leur appliquent une couleur tant qu'elle ne sont pas complétées, cela risque
d'empêcher ta macro de fonctionner?


Si je puis me permettre une intrusion....
La MEFC n'a aucune incidence sur le "Interior.ColorIndex" d'une cellule !
Comme si elle n'était pas formatée !
Donc, comme d'hab, éviter de se servir de la ''conséquence'' (la couleur) pour
compter, mais plutôt de la "cause" de la MFEC (tests logiques)

AV

Avatar
géjoun.
OK, compris, je vais me pencher la dessus! mais reste pas trop loin quand
même, parce que si j'arrive à faire quelque chose qui marche du 1er coup, je
crois que je pars faire bruler un cierge à Lourdes!
PS: encore un truc bête, mais comment on fait pour trouver le numéro qui
correspond à la couleur? (le bleu que j'ai choisi = 34???)

--
__________________________
Géjoun.

····················································
Enlevez l'année pour répondre...
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

De ces petits doigts, Philippe.R [] a tapoté:

|| Bonjour,
|| Tu as bien compris, tu devras seulement prendre le soin de la lancer
|| depuis Outils / macro / macros Il faut remplacer :
|| If c.Interior.Color = vbred Then
|| par
|| If c.Interior.Colorindex = 34 Then
|| Par ailleurs la MEFC devrait rester sans effet sur la macro
|| --
|| Amicales Salutations
|| Retirer A_S_ pour répondre.
|| XL 97 / 2000 / 2002
Avatar
géjoun.
Mais vas-y, permet toi... :o)
Donc, d'aprés ce que tu me dis, c'est bien ce que je fais (?!); je me base
sur la couleur de fond pour repérer les cellules qui seront à convertir, et
non sur la MEFC que j'ai appliqué à certaines pour différencier les cellules
à compléter de celles possédant une formule...
J'ai bon là?

--
__________________________
Géjoun.

····················································
Enlevez l'année pour répondre...
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


De ces petits doigts, AV [] a tapoté:

|| Si je puis me permettre une intrusion....
|| La MEFC n'a aucune incidence sur le "Interior.ColorIndex" d'une
|| cellule ! Comme si elle n'était pas formatée !
|| Donc, comme d'hab, éviter de se servir de la ''conséquence'' (la
|| couleur) pour compter, mais plutôt de la "cause" de la MFEC (tests
|| logiques)
||
|| AV
Avatar
Daniel.j
Seules les cellules sélectionnées(sélection multiple comprise) avant l'execution
de la macro seront modifiées.
http://dj.joss.free.fr/telechar.htm#euro

Daniel


"géjoun." a écrit dans le message de news:
OyhF1#
| De ces petits doigts, Daniel.j [] a tapoté:
|
| Bonjour,
|
| Qu'entends-tu par "il faut evidemment sélectionner les cellules concernées"?
| On peut faire une sélection globale et la macro repère celles qu'il faut
| convertir par rapport à la couleur de remplissage? ou alors il faut
| sélectionner une à une les cellules concernées?
|
| --
| __________________________
| Géjoun.
|
| ····················································
| Enlevez l'année pour répondre...
| ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
|
|
| || Bonsoir,
| || cette macro traduit en franc la selection !
| || Il faut evidement sélectionner les cellules concernées !
| ||
| || Option Explicit
| || Const TAUX As Single = 6.55957
| ||
| || Sub EuroEnFranc()
| || Dim Cels As Range
| || For Each Cels In Selection
| || If IsNumeric(Cels) Then
| || Cels.Value = Int((Cels.Value * TAUX) * 100) / 100
| || Cels.NumberFormat = "# ##0.00" & """ F"";-# ##0.00" & """ F"""
| || End If
| || Next
| || End Sub
| ||
| ||
| || --
| || Daniel MVP Excel
| || FAQ du Forum Microsoft Public Fr Excel
| || http://dj.joss.free.fr/faq.htm
| ||
|
|