Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/01/2011, 11h34   #1
Invité de passage
 
Inscription : juin 2007
Messages : 25
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 25
Points : 3
Points : 3
Par défaut 3 Formules pas évidentes

Bonjour,

Je cherche à rendre les calculs de ma feuille excel plus rapide.
Actuellement tout marche très bien mais j'ai une formule par cellules et j'aimerais fonctionner avec des tableaux. J'ai 3 problèmes:

Le premier (le plus simple),
Je veut comparer un tableau avec un nombre fixe, et je ne sais pas comment créer une matrice de mon nombre fixe dans la formule ou faire qqch de similaire.
Pour l'instant ma formule est : et bien sur il ne compare que le premier élément du tableau avec 0.3
=min(A1:E200,0.3)

Exemple de ce que j'attends
mon tableau
0.1 0.2 0.4
0.3 0.5 0.6

j'applique ma fonction avec min et 0.3, et j'obtiens:
0.1 0.2 0.3
0.3 0.3 0.3

2éme question avec un sumproduct:
Pour le moment j'ai 2 ranges de 2000 lignes et 4 colonnes chacun et je sumproduct les 4 colonnes de la première ligne du premier range avec les 4 colonnes de la premiere ligne du 2 éme range et j'étends ma formule. J'aimerais pouvoir faire la même chose en passant par un tableau. Du genre
SUMPRODUCT(A1 : D2000, E1:H2000)

Exemple:
Premier range
1 2 3 4
5 6 7 8
Deuxieme range
2 2 2 2
3 3 3 3
Resultat
20 (2*1+2*2+2*3+2*4)
78 (3*5+3*6+3*7+3*8)

Pour la 3eme je la poserai un peu plus tard, en fonction de si je peut faire mes idées 1 et 2 .....

PS: Je rappelle ici que je ne veut que passer par des tableaux: appliquer la même formule pour tout un range de cellules sans avoir a l'etendre ....

Merci pour votre aide.
Luffy_San est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 12h28   #2
Expert Confirmé
 
Philippe Tulliez
Développeur et formateur VBA, Excel et Word.
Inscription : janvier 2010
Messages : 1 301
Détails du profil
Informations personnelles :
Nom : Philippe Tulliez
Localisation : Belgique

Informations professionnelles :
Activité : Développeur et formateur VBA, Excel et Word.

Informations forums :
Inscription : janvier 2010
Messages : 1 301
Points : 2 647
Points : 2 647
Pour la question 1
Code :
1
2
Pour l'instant ma formule est : et bien sur il ne compare que le premier élément du tableau avec 0.3
=min(A1:E200,0.3)
Je ne connais pas le contenu de ton tableau mais 90% des problèmes rencontrés lors du retour du résultat d'une fonction est un problème de référencement de cellule.
Autrement dit soit tu dois utiliser une référence absolue soit par exemple $A$1 soit une référence mixte $A1 ou A$1.
Si tu ne maîtrises pas cette matière, je te conseille la lecture de ce didacticiel extrêmement bien fait.
http://fauconnier.developpez.com/exc...es/references/
__________________
Philippe Tulliez
http://philippe.tulliez.be
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
corona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 12h52   #3
Expert Confirmé
 
Philippe Tulliez
Développeur et formateur VBA, Excel et Word.
Inscription : janvier 2010
Messages : 1 301
Détails du profil
Informations personnelles :
Nom : Philippe Tulliez
Localisation : Belgique

Informations professionnelles :
Activité : Développeur et formateur VBA, Excel et Word.

Informations forums :
Inscription : janvier 2010
Messages : 1 301
Points : 2 647
Points : 2 647
Bonjour,
Pour ta question 1, je suis perplexe quant à ta syntaxe sur la fonction MIN()
La formule devrait être écrite comme ceci
__________________
Philippe Tulliez
http://philippe.tulliez.be
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
corona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 15h04   #4
Invité de passage
 
Inscription : juin 2007
Messages : 25
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 25
Points : 3
Points : 3
Citation:
Envoyé par corona Voir le message
Bonjour,
Pour ta question 1, je suis perplexe quant à ta syntaxe sur la fonction MIN()
La formule devrait être écrite comme ceci
Justement ca ne marche pas, mais je voulais ecrire un exemple de ce que j'attendais.

Merci

Ce n'est pas le Min(A1:E200) qui m'intéresse. Je veut que la fonction que j'écrive me retourne un tableau de min ...
Comme mon exemple.
En gros pour l'instant j'ai 5*200 (A->E * 1-200) cellules avec une formule du genre min(A1,0.3) .... min (E200,0.3);
Je veut juste simplifier tout ca et ne faire qu'une formule en manipulant des tableaux (Avec le Shift+Ctrl+Enter: Je sélectionne toutes les cellules que je veut, je rentre une formule générique, qui calcule le min d'un tableau et de 0.3 (ou n'importe quelle valeur ....) et qui me retourne le tableau pour la plage sélectionnée en tapant Ctrl+Shift+Enter.
Luffy_San est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 15h12   #5
Invité de passage
 
Inscription : juin 2007
Messages : 25
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 25
Points : 3
Points : 3
En fait la solution suivante pourrait marcher (pour vous donner une idée de ce que je veut faire)
1er tableau
0.2 0.4 0.5 0.1
0.5 0.6 0.3 0.1
2em tableau
0.3 0.3 0.3 0.3
0.3 0.3 0.3 0.3
et la je ferai un min(tableau1, tableau 2) en selectionnant 2 lignes et 4 colonnes puis ctrl+shift+enter.
Le truc c'est que je ne veut pas créer le 2éme tableau et qu'il soit créer à la volée dans la formule excel, ou bien avoir une autre solution qui fasse la même chose.
Pour ceux qui utilise maltlab, ici par exemple j'aurai utilisé la fonction ones(2, 4) ....
Merci
Luffy_San est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 15h28   #6
Invité de passage
 
Inscription : juin 2007
Messages : 25
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 25
Points : 3
Points : 3
Bon j'ai trouvé pour la question 1:
En fait c'est tout bête il suffisait juste de faire qqch comme ça:
(if(A1:E200>0.3,0.3,A1:E200)) Ctrl+Shift+Enter

Petite question sinon certains d'entre vous ont t'il déja fait des formules utilisant des tableaux et qui sont récursives:
Du genre pour construire la ligne 2, j'ai besoin de la ligne 1. Je pensais faire un truc comme ca : je sélectionne mon tableau de A2:E200 et je rentre une formule du genre =2*A1:E199. Mais ça n'as pas l'air de marcher et Excel et super long. Apparente t'il ça à une référence circulaire ?
Luffy_San est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h47.


 
 
 
 
Partenaires

Hébergement Web