Appliquer un pourcentage identique à toutes les valeurs de mon t ab
18 réponses
MJLGD
Je tiens un tableau de statistiques. Je dois appliquer une augmentation de 3
% à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise
très mal ?
Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci
Bonsoir, j'ai du retard dans mes réactions ce soir et en plus je cafouille! Cordialement Michel dit "Sam"
"Sam" a écrit dans le message de news: 49be80a6$0$2736$
Bonjour, mets 1,03 dans une cellule copie la cellule, sélectionne la zone à modifier collage spécial/multiplication
Cordialement Michel dit "Sam"
"MJLGD" a écrit dans le message de news:
Je tiens un tableau de statistiques. Je dois appliquer une augmentation de 3 % à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise très mal ? Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci
Bonsoir,
j'ai du retard dans mes réactions ce soir et en plus je cafouille!
Cordialement
Michel dit "Sam"
"Sam" <prenom-ou-sam@citron.fr> a écrit dans le message de news:
49be80a6$0$2736$ba4acef3@news.orange.fr...
Bonjour,
mets 1,03 dans une cellule
copie la cellule,
sélectionne la zone à modifier
collage spécial/multiplication
Cordialement
Michel dit "Sam"
"MJLGD" <MJLGD@discussions.microsoft.com> a écrit dans le message de news:
DE41128E-8DD0-4DC6-8F26-D0F276AB64B2@microsoft.com...
Je tiens un tableau de statistiques. Je dois appliquer une augmentation
de 3
% à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise
très mal ?
Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci
Bonsoir, j'ai du retard dans mes réactions ce soir et en plus je cafouille! Cordialement Michel dit "Sam"
"Sam" a écrit dans le message de news: 49be80a6$0$2736$
Bonjour, mets 1,03 dans une cellule copie la cellule, sélectionne la zone à modifier collage spécial/multiplication
Cordialement Michel dit "Sam"
"MJLGD" a écrit dans le message de news:
Je tiens un tableau de statistiques. Je dois appliquer une augmentation de 3 % à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise très mal ? Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci
Jacquouille
Salut Isabelle Au risque de paraître un troubleur de fête, est-il nécessaire de mettre le "%" ? La multiplication ne doit-elle pas être par 1.03 ?
-- Bien amicalmement, "Le vin est au repas ce que le parfum est à la femme."
Jacquouille.
"isabelle" a écrit dans le message de news:
correction : mettre la valeur de 1.03% en cellule et copier cette valeur pour la multiplication,
isabelle
MJLGD a écrit :
Je tiens un tableau de statistiques. Je dois appliquer une augmentation de 3 % à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise très mal ? Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci
Salut Isabelle
Au risque de paraître un troubleur de fête, est-il nécessaire de mettre le
"%" ?
La multiplication ne doit-elle pas être par 1.03 ?
--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."
Jacquouille.
"isabelle" <i@v> a écrit dans le message de news:
OblHvDlpJHA.1168@TK2MSFTNGP05.phx.gbl...
correction : mettre la valeur de 1.03% en cellule et copier cette valeur
pour la multiplication,
isabelle
MJLGD a écrit :
Je tiens un tableau de statistiques. Je dois appliquer une augmentation
de 3 % à toutes les valeurs. Comment faire sans passer par VBA que je
maîtrise très mal ?
Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci
Salut Isabelle Au risque de paraître un troubleur de fête, est-il nécessaire de mettre le "%" ? La multiplication ne doit-elle pas être par 1.03 ?
-- Bien amicalmement, "Le vin est au repas ce que le parfum est à la femme."
Jacquouille.
"isabelle" a écrit dans le message de news:
correction : mettre la valeur de 1.03% en cellule et copier cette valeur pour la multiplication,
isabelle
MJLGD a écrit :
Je tiens un tableau de statistiques. Je dois appliquer une augmentation de 3 % à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise très mal ? Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci
garnote
Il y a aussi cette drôle de chose :
[a1:a100] = [1.03*(a1:a100)]
Serge
"FFO" a écrit dans le message de news:
Salut à toi Il est vrai que par macro c'est si simple avec ce code :
For Each c In Selection c.Value = c + c * 3 / 100 Next
tu sélectionnes tes données et tu exécutes ce code
Peut être que des formulistes te proposeront aussi des solutions miracles du même genre
Fais des essais et dis moi !!!!!
Il y a aussi cette drôle de chose :
[a1:a100] = [1.03*(a1:a100)]
Serge
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de news: C916791F-9FD4-4438-B632-D6D08BB1022D@microsoft.com...
Salut à toi
Il est vrai que par macro c'est si simple avec ce code :
For Each c In Selection
c.Value = c + c * 3 / 100
Next
tu sélectionnes tes données et tu exécutes ce code
Peut être que des formulistes te proposeront aussi des solutions miracles du
même genre
Salut à toi Il est vrai que par macro c'est si simple avec ce code :
For Each c In Selection c.Value = c + c * 3 / 100 Next
tu sélectionnes tes données et tu exécutes ce code
Peut être que des formulistes te proposeront aussi des solutions miracles du même genre
Fais des essais et dis moi !!!!!
MJLGD
Comment utiliser cette formule ? Merci de bien vouloir m'éclairer
"garnote" a écrit :
Il y a aussi cette drôle de chose :
[a1:a100] = [1.03*(a1:a100)]
Serge
"FFO" a écrit dans le message de news: > Salut à toi > Il est vrai que par macro c'est si simple avec ce code : > > For Each c In Selection > c.Value = c + c * 3 / 100 > Next > > tu sélectionnes tes données et tu exécutes ce code > > Peut être que des formulistes te proposeront aussi des solutions miracles du > même genre > > Fais des essais et dis moi !!!!! > >
Comment utiliser cette formule ? Merci de bien vouloir m'éclairer
"garnote" a écrit :
Il y a aussi cette drôle de chose :
[a1:a100] = [1.03*(a1:a100)]
Serge
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de news: C916791F-9FD4-4438-B632-D6D08BB1022D@microsoft.com...
> Salut à toi
> Il est vrai que par macro c'est si simple avec ce code :
>
> For Each c In Selection
> c.Value = c + c * 3 / 100
> Next
>
> tu sélectionnes tes données et tu exécutes ce code
>
> Peut être que des formulistes te proposeront aussi des solutions miracles du
> même genre
>
> Fais des essais et dis moi !!!!!
>
>
Comment utiliser cette formule ? Merci de bien vouloir m'éclairer
"garnote" a écrit :
Il y a aussi cette drôle de chose :
[a1:a100] = [1.03*(a1:a100)]
Serge
"FFO" a écrit dans le message de news: > Salut à toi > Il est vrai que par macro c'est si simple avec ce code : > > For Each c In Selection > c.Value = c + c * 3 / 100 > Next > > tu sélectionnes tes données et tu exécutes ce code > > Peut être que des formulistes te proposeront aussi des solutions miracles du > même genre > > Fais des essais et dis moi !!!!! > >
MJLGD
Merci d'avoir pris le temps de me répondre. La Communauté est vraiment formidable !
"Sam" a écrit :
Bonsoir, j'ai du retard dans mes réactions ce soir et en plus je cafouille! Cordialement Michel dit "Sam"
"Sam" a écrit dans le message de news: 49be80a6$0$2736$ > > Bonjour, > mets 1,03 dans une cellule > copie la cellule, > sélectionne la zone à modifier > collage spécial/multiplication > > Cordialement > Michel dit "Sam" > > "MJLGD" a écrit dans le message de news: > >> Je tiens un tableau de statistiques. Je dois appliquer une augmentation >> de 3 >> % à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise >> très mal ? >> Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci > >
Merci d'avoir pris le temps de me répondre. La Communauté est vraiment
formidable !
"Sam" a écrit :
Bonsoir,
j'ai du retard dans mes réactions ce soir et en plus je cafouille!
Cordialement
Michel dit "Sam"
"Sam" <prenom-ou-sam@citron.fr> a écrit dans le message de news:
49be80a6$0$2736$ba4acef3@news.orange.fr...
>
> Bonjour,
> mets 1,03 dans une cellule
> copie la cellule,
> sélectionne la zone à modifier
> collage spécial/multiplication
>
> Cordialement
> Michel dit "Sam"
>
> "MJLGD" <MJLGD@discussions.microsoft.com> a écrit dans le message de news:
> DE41128E-8DD0-4DC6-8F26-D0F276AB64B2@microsoft.com...
>> Je tiens un tableau de statistiques. Je dois appliquer une augmentation
>> de 3
>> % à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise
>> très mal ?
>> Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci
>
>
Merci d'avoir pris le temps de me répondre. La Communauté est vraiment formidable !
"Sam" a écrit :
Bonsoir, j'ai du retard dans mes réactions ce soir et en plus je cafouille! Cordialement Michel dit "Sam"
"Sam" a écrit dans le message de news: 49be80a6$0$2736$ > > Bonjour, > mets 1,03 dans une cellule > copie la cellule, > sélectionne la zone à modifier > collage spécial/multiplication > > Cordialement > Michel dit "Sam" > > "MJLGD" a écrit dans le message de news: > >> Je tiens un tableau de statistiques. Je dois appliquer une augmentation >> de 3 >> % à toutes les valeurs. Comment faire sans passer par VBA que je maîtrise >> très mal ? >> Si VBA est incontournable, alors parlez-moi de la solution via VBA. Merci > >
garnote
Ave,
Cette instruction doit être utilisée dans une macro et permet de multiplier tous les nombres de la plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage() [a1:A100] = [1.03*(a1:a100)] End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10", et l'affecter à une variable appelée moyenne, on peut utiliser indifféremment : 1) moyenne = [Average(a1:a10)] ou 2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple. En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction() Dim Fonction As String Dim Adresse As String Dim v As Double Fonction = "Average" Adresse = "A1:A10" v = Evaluate(Fonction & "(" & Adresse & ")") End Sub
Si tu remplaces Average par Sum ou par Max, tu obtiendras la somme ou le maximum de A1:A10.
Référence : VBA pour Excel 2002 Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg CampusPress Page 87
Serge
"MJLGD" a écrit dans le message de news:
Comment utiliser cette formule ? Merci de bien vouloir m'éclairer
"garnote" a écrit :
Il y a aussi cette drôle de chose :
[a1:a100] = [1.03*(a1:a100)]
Serge
"FFO" a écrit dans le message de news:
> Salut à toi > Il est vrai que par macro c'est si simple avec ce code : > > For Each c In Selection > c.Value = c + c * 3 / 100 > Next > > tu sélectionnes tes données et tu exécutes ce code > > Peut être que des formulistes te proposeront aussi des solutions miracles du > même genre > > Fais des essais et dis moi !!!!! > >
Ave,
Cette instruction doit être utilisée dans une macro
et permet de multiplier tous les nombres de la
plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage()
[a1:A100] = [1.03*(a1:a100)]
End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10",
et l'affecter à une variable appelée moyenne, on peut utiliser
indifféremment :
1) moyenne = [Average(a1:a10)]
ou
2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple.
En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction()
Dim Fonction As String
Dim Adresse As String
Dim v As Double
Fonction = "Average"
Adresse = "A1:A10"
v = Evaluate(Fonction & "(" & Adresse & ")")
End Sub
Si tu remplaces Average par Sum ou par Max,
tu obtiendras la somme ou le maximum de A1:A10.
Référence :
VBA pour Excel 2002
Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg
CampusPress
Page 87
Serge
"MJLGD" <MJLGD@discussions.microsoft.com> a écrit dans le message de news:
95B346BB-B9E0-4FF8-A86B-CA620B9F9DF7@microsoft.com...
Comment utiliser cette formule ? Merci de bien vouloir m'éclairer
"garnote" a écrit :
Il y a aussi cette drôle de chose :
[a1:a100] = [1.03*(a1:a100)]
Serge
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de news:
C916791F-9FD4-4438-B632-D6D08BB1022D@microsoft.com...
> Salut à toi
> Il est vrai que par macro c'est si simple avec ce code :
>
> For Each c In Selection
> c.Value = c + c * 3 / 100
> Next
>
> tu sélectionnes tes données et tu exécutes ce code
>
> Peut être que des formulistes te proposeront aussi des solutions miracles du
> même genre
>
> Fais des essais et dis moi !!!!!
>
>
Cette instruction doit être utilisée dans une macro et permet de multiplier tous les nombres de la plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage() [a1:A100] = [1.03*(a1:a100)] End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10", et l'affecter à une variable appelée moyenne, on peut utiliser indifféremment : 1) moyenne = [Average(a1:a10)] ou 2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple. En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction() Dim Fonction As String Dim Adresse As String Dim v As Double Fonction = "Average" Adresse = "A1:A10" v = Evaluate(Fonction & "(" & Adresse & ")") End Sub
Si tu remplaces Average par Sum ou par Max, tu obtiendras la somme ou le maximum de A1:A10.
Référence : VBA pour Excel 2002 Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg CampusPress Page 87
Serge
"MJLGD" a écrit dans le message de news:
Comment utiliser cette formule ? Merci de bien vouloir m'éclairer
"garnote" a écrit :
Il y a aussi cette drôle de chose :
[a1:a100] = [1.03*(a1:a100)]
Serge
"FFO" a écrit dans le message de news:
> Salut à toi > Il est vrai que par macro c'est si simple avec ce code : > > For Each c In Selection > c.Value = c + c * 3 / 100 > Next > > tu sélectionnes tes données et tu exécutes ce code > > Peut être que des formulistes te proposeront aussi des solutions miracles du > même genre > > Fais des essais et dis moi !!!!! > >
MJLGD
Merci. C'est lumineux
"garnote" a écrit :
Ave,
Cette instruction doit être utilisée dans une macro et permet de multiplier tous les nombres de la plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage() [a1:A100] = [1.03*(a1:a100)] End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10", et l'affecter à une variable appelée moyenne, on peut utiliser indifféremment : 1) moyenne = [Average(a1:a10)] ou 2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple. En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction() Dim Fonction As String Dim Adresse As String Dim v As Double Fonction = "Average" Adresse = "A1:A10" v = Evaluate(Fonction & "(" & Adresse & ")") End Sub
Si tu remplaces Average par Sum ou par Max, tu obtiendras la somme ou le maximum de A1:A10.
Référence : VBA pour Excel 2002 Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg CampusPress Page 87
Serge
"MJLGD" a écrit dans le message de news:
> Comment utiliser cette formule ? Merci de bien vouloir m'éclairer > > "garnote" a écrit : > >> Il y a aussi cette drôle de chose : >> >> [a1:a100] = [1.03*(a1:a100)] >> >> Serge >> >> >> >> >> "FFO" a écrit dans le message de news: >> >> > Salut à toi >> > Il est vrai que par macro c'est si simple avec ce code : >> > >> > For Each c In Selection >> > c.Value = c + c * 3 / 100 >> > Next >> > >> > tu sélectionnes tes données et tu exécutes ce code >> > >> > Peut être que des formulistes te proposeront aussi des solutions miracles du >> > même genre >> > >> > Fais des essais et dis moi !!!!! >> > >> > >> >> >>
Merci. C'est lumineux
"garnote" a écrit :
Ave,
Cette instruction doit être utilisée dans une macro
et permet de multiplier tous les nombres de la
plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage()
[a1:A100] = [1.03*(a1:a100)]
End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10",
et l'affecter à une variable appelée moyenne, on peut utiliser
indifféremment :
1) moyenne = [Average(a1:a10)]
ou
2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple.
En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction()
Dim Fonction As String
Dim Adresse As String
Dim v As Double
Fonction = "Average"
Adresse = "A1:A10"
v = Evaluate(Fonction & "(" & Adresse & ")")
End Sub
Si tu remplaces Average par Sum ou par Max,
tu obtiendras la somme ou le maximum de A1:A10.
Référence :
VBA pour Excel 2002
Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg
CampusPress
Page 87
Serge
"MJLGD" <MJLGD@discussions.microsoft.com> a écrit dans le message de news:
95B346BB-B9E0-4FF8-A86B-CA620B9F9DF7@microsoft.com...
> Comment utiliser cette formule ? Merci de bien vouloir m'éclairer
>
> "garnote" a écrit :
>
>> Il y a aussi cette drôle de chose :
>>
>> [a1:a100] = [1.03*(a1:a100)]
>>
>> Serge
>>
>>
>>
>>
>> "FFO" <FFO@discussions.microsoft.com> a écrit dans le message de news:
>> C916791F-9FD4-4438-B632-D6D08BB1022D@microsoft.com...
>> > Salut à toi
>> > Il est vrai que par macro c'est si simple avec ce code :
>> >
>> > For Each c In Selection
>> > c.Value = c + c * 3 / 100
>> > Next
>> >
>> > tu sélectionnes tes données et tu exécutes ce code
>> >
>> > Peut être que des formulistes te proposeront aussi des solutions miracles du
>> > même genre
>> >
>> > Fais des essais et dis moi !!!!!
>> >
>> >
>>
>>
>>
Cette instruction doit être utilisée dans une macro et permet de multiplier tous les nombres de la plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage() [a1:A100] = [1.03*(a1:a100)] End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10", et l'affecter à une variable appelée moyenne, on peut utiliser indifféremment : 1) moyenne = [Average(a1:a10)] ou 2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple. En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction() Dim Fonction As String Dim Adresse As String Dim v As Double Fonction = "Average" Adresse = "A1:A10" v = Evaluate(Fonction & "(" & Adresse & ")") End Sub
Si tu remplaces Average par Sum ou par Max, tu obtiendras la somme ou le maximum de A1:A10.
Référence : VBA pour Excel 2002 Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg CampusPress Page 87
Serge
"MJLGD" a écrit dans le message de news:
> Comment utiliser cette formule ? Merci de bien vouloir m'éclairer > > "garnote" a écrit : > >> Il y a aussi cette drôle de chose : >> >> [a1:a100] = [1.03*(a1:a100)] >> >> Serge >> >> >> >> >> "FFO" a écrit dans le message de news: >> >> > Salut à toi >> > Il est vrai que par macro c'est si simple avec ce code : >> > >> > For Each c In Selection >> > c.Value = c + c * 3 / 100 >> > Next >> > >> > tu sélectionnes tes données et tu exécutes ce code >> > >> > Peut être que des formulistes te proposeront aussi des solutions miracles du >> > même genre >> > >> > Fais des essais et dis moi !!!!! >> > >> > >> >> >>
garnote
Ave,
Le signe d'égalité n'est pas nécessaire et on n'a pas à se préoccuper des majuscules. moyenne = Evaluate("=Average(A1:A10)") est équivalent à : moyenne = evaluate("average(A1:A10)")
Serge
"MJLGD" a écrit dans le message de news:
Merci. C'est lumineux
"garnote" a écrit :
Ave,
Cette instruction doit être utilisée dans une macro et permet de multiplier tous les nombres de la plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage() [a1:A100] = [1.03*(a1:a100)] End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10", et l'affecter à une variable appelée moyenne, on peut utiliser indifféremment : 1) moyenne = [Average(a1:a10)] ou 2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple. En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction() Dim Fonction As String Dim Adresse As String Dim v As Double Fonction = "Average" Adresse = "A1:A10" v = Evaluate(Fonction & "(" & Adresse & ")") End Sub
Si tu remplaces Average par Sum ou par Max, tu obtiendras la somme ou le maximum de A1:A10.
Référence : VBA pour Excel 2002 Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg CampusPress Page 87
Serge
"MJLGD" a écrit dans le message de news:
> Comment utiliser cette formule ? Merci de bien vouloir m'éclairer > > "garnote" a écrit : > >> Il y a aussi cette drôle de chose : >> >> [a1:a100] = [1.03*(a1:a100)] >> >> Serge >> >> >> >> >> "FFO" a écrit dans le message de news: >> >> > Salut à toi >> > Il est vrai que par macro c'est si simple avec ce code : >> > >> > For Each c In Selection >> > c.Value = c + c * 3 / 100 >> > Next >> > >> > tu sélectionnes tes données et tu exécutes ce code >> > >> > Peut être que des formulistes te proposeront aussi des solutions miracles du >> > même genre >> > >> > Fais des essais et dis moi !!!!! >> > >> > >> >> >>
Ave,
Le signe d'égalité n'est pas nécessaire
et on n'a pas à se préoccuper des majuscules.
moyenne = Evaluate("=Average(A1:A10)")
est équivalent à :
moyenne = evaluate("average(A1:A10)")
Serge
"MJLGD" <MJLGD@discussions.microsoft.com> a écrit dans le message de news:
E57B3261-156E-4559-A514-745612F2A66F@microsoft.com...
Merci. C'est lumineux
"garnote" a écrit :
Ave,
Cette instruction doit être utilisée dans une macro
et permet de multiplier tous les nombres de la
plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage()
[a1:A100] = [1.03*(a1:a100)]
End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10",
et l'affecter à une variable appelée moyenne, on peut utiliser
indifféremment :
1) moyenne = [Average(a1:a10)]
ou
2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple.
En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction()
Dim Fonction As String
Dim Adresse As String
Dim v As Double
Fonction = "Average"
Adresse = "A1:A10"
v = Evaluate(Fonction & "(" & Adresse & ")")
End Sub
Si tu remplaces Average par Sum ou par Max,
tu obtiendras la somme ou le maximum de A1:A10.
Référence :
VBA pour Excel 2002
Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg
CampusPress
Page 87
Serge
"MJLGD" <MJLGD@discussions.microsoft.com> a écrit dans le message de news:
95B346BB-B9E0-4FF8-A86B-CA620B9F9DF7@microsoft.com...
> Comment utiliser cette formule ? Merci de bien vouloir m'éclairer
>
> "garnote" a écrit :
>
>> Il y a aussi cette drôle de chose :
>>
>> [a1:a100] = [1.03*(a1:a100)]
>>
>> Serge
>>
>>
>>
>>
>> "FFO" <FFO@discussions.microsoft.com> a écrit dans le message de news:
>> C916791F-9FD4-4438-B632-D6D08BB1022D@microsoft.com...
>> > Salut à toi
>> > Il est vrai que par macro c'est si simple avec ce code :
>> >
>> > For Each c In Selection
>> > c.Value = c + c * 3 / 100
>> > Next
>> >
>> > tu sélectionnes tes données et tu exécutes ce code
>> >
>> > Peut être que des formulistes te proposeront aussi des solutions miracles du
>> > même genre
>> >
>> > Fais des essais et dis moi !!!!!
>> >
>> >
>>
>>
>>
Le signe d'égalité n'est pas nécessaire et on n'a pas à se préoccuper des majuscules. moyenne = Evaluate("=Average(A1:A10)") est équivalent à : moyenne = evaluate("average(A1:A10)")
Serge
"MJLGD" a écrit dans le message de news:
Merci. C'est lumineux
"garnote" a écrit :
Ave,
Cette instruction doit être utilisée dans une macro et permet de multiplier tous les nombres de la plage A!:A100 par 1,03 sans passer par une boucle.
Sub Multiplier_Plage() [a1:A100] = [1.03*(a1:a100)] End Sub
[Expession] est l'équivalent de Evaluate("Expression")
Par exemple, pour calculer la moyenne de la plage "A1:A10", et l'affecter à une variable appelée moyenne, on peut utiliser indifféremment : 1) moyenne = [Average(a1:a10)] ou 2) moyenne = Evaluate("=Average(A1:A10)")
La première technique est plus courte mais moins souple. En effet, on peut « passer des variables » à Evaluate :
Sub Calcul_Fonction() Dim Fonction As String Dim Adresse As String Dim v As Double Fonction = "Average" Adresse = "A1:A10" v = Evaluate(Fonction & "(" & Adresse & ")") End Sub
Si tu remplaces Average par Sum ou par Max, tu obtiendras la somme ou le maximum de A1:A10.
Référence : VBA pour Excel 2002 Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg CampusPress Page 87
Serge
"MJLGD" a écrit dans le message de news:
> Comment utiliser cette formule ? Merci de bien vouloir m'éclairer > > "garnote" a écrit : > >> Il y a aussi cette drôle de chose : >> >> [a1:a100] = [1.03*(a1:a100)] >> >> Serge >> >> >> >> >> "FFO" a écrit dans le message de news: >> >> > Salut à toi >> > Il est vrai que par macro c'est si simple avec ce code : >> > >> > For Each c In Selection >> > c.Value = c + c * 3 / 100 >> > Next >> > >> > tu sélectionnes tes données et tu exécutes ce code >> > >> > Peut être que des formulistes te proposeront aussi des solutions miracles du >> > même genre >> > >> > Fais des essais et dis moi !!!!! >> > >> > >> >> >>