![]() |
|
Forum
|
|
|||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Bonjour,
un prècédent post n'ayant pas porté ses fruits, je repose la question differement : Existe t'il une fonction VBE qui permet dans une macro d'afficher dans une cellule le résulat d'une formule sans y inscrire toute la formule ? L'intéret étant le gain de place. la formule de calcul serait la suivante Range("K6").Select Selection.FormulaArray = _ "=AVERAGE(IF(MONTH(R6C2:R65536C2)=9,IF(YEAR(R6C2:R 65536C2)=2003,IF(R6C5:R65536C5<>"""",R6C5:R65536C5 ))))" D'avance merci. |
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
Guest
Messages: n/a
|
Salut !
Tu peux simplement "mettre en valeur" tes résultats après avoir fait tes calculs. Exemple : 'on calcule une somme Selection.FormulaR1C1= "=SUM(....)" 'on ne garde que le résultat Selection.text=selection.value Sinon, il est possible de faire un copier / collage spécial valeurs Selection.copy Selection.pastespecial (xlvalues) Ou enfin, tu peux définir comme variable dans VBA ta formule et ne recopier dans la cellule que le résultat ! A ta disposition pour plus d'informations. Clément "S'il n'y a pas de solution, c'est qu'il n'y a pas de problème." (devise Shadock) |
|
|
#3 (permalink) |
|
Guest
Messages: n/a
|
Bonjour Man, Kad et Forum
Tu as 2 possibilités: 1/ utiliser la fonction evaluate: tavariable=EVALUATE("....ta formule....") ou [taformule sans guillemets] 2/ utiliser application.worksheetfunction: dans ton cas tu aurais peut-être intérêt à transformer ta formule en utilisant SUMPRODUCT divisé par le nbre d'éléments rappel: les références au plage doivent être arguments de range par exemple "A1:H5" avec worksheetfunction s'écrira range("A1:H5") Bon courage Michel |
|
|
#4 (permalink) |
|
Guest
Messages: n/a
|
Bonne fête MICHEL Le dicton du jour: "A la Saint Michel Regarde le ciel...S'il se baigne l'aile il pleut jusqu'à Noël." Le dicton du mois: "En septembre les feignants peuvent s'aller pendre." A+ Vériland |
|
|
#5 (permalink) |
|
Guest
Messages: n/a
|
Bonjour Kad et olivier, heu non Michel
merci pour votre aide. Voici ce à quoi j'arrive : avec Selection.text=selection.value ca ne fonctionne pas avec Selection.copy Selection.pastespecial (xlvalues) ca fonctionne très bien et je me demande bien pourquoi je n'y ai pas pensé avant, même si je ne trouve pas très "propre" mais l'efficacité avant tout. avec tavariable=EVALUATE("....ta formule....") ou [taformule sans guillemets] j'avais déja essayé cette fonction (je crois que c'est toi michel qui me l'a apprise il y qq mois). malheureusement j'ai essayé dans tous les sens et elle ne veut pas fonctionner avec sumproduct. (pourtant ca mache très bien avec somme par exemple). avec utiliser application.worksheetfunction: ca dépasse mes compétences. si qq'un arrive a faire fonctionner la formule avec evaluate je lui tire mon chapeau. En tous cas merci encore. |
| ANNONCES | |
| Liens sociaux |
| Outils de la discussion | |
|
|