Formule excel ou macro

kiko6969 Messages postés 1 Date d'inscription lundi 10 octobre 2005 Statut Membre Dernière intervention 31 août 2007 - 31 août 2007 à 05:13
JM247L Messages postés 443 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 1 mars 2011 - 31 août 2007 à 11:38
Bonjour,
Je recheche a renvoyer le prix (D6) d'une liste déroulante en (B6) en automatique.En (O6:O22;) j'ai ma liste pour D6 et en (P6:P22) j'ai ma liste de prix.
J'ai mis comme formule =RECHERCHE(Tableau2[ligne;[Colonne1]];O5:P22)
Colonne1=B6
En fait je veux que quand je sort en B6 conté doux li prix en D6 donne 16.2.
Mes le problème est qu'il me donne un ordre aléatore et même des foie rien.
Alors la soulution peu etre est de faire un macro mes je sais pas faire
Merci d'avance a celui ou celle qui m'aidera

6 réponses

FMatrix07 Messages postés 233 Date d'inscription mercredi 26 février 2003 Statut Membre Dernière intervention 21 février 2009 2
31 août 2007 à 07:15
Bonjour kiko6969,

Si tu veux tu m'envoyer le fichier que tu utilise que je regarde, car comme ça je n'arrive pas à voir.
Mais je pense qu'il faut plus utiliser une RECHERCHEV qu'une RECHERCHE.

@+: SCCréat
Pensez:  Réponse acceptée
Stéphan.COCHET
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
31 août 2007 à 07:54
Salut,

Si tu fais du VBA pourquoi tu poste dans le forum VB6 ???

Je déplace vers le forum approprié !

______________________________________
DarK Sidious
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
31 août 2007 à 09:55
Dark Sidious < Tu devrais te faire déménageur plutôt de developpeur !
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
31 août 2007 à 10:32
Salut,

C'est clair qu'à force je devrais me faire payer pour déplacer des topics ! Je serais vite milliardaire !
______________________________________
DarK Sidious
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
31 août 2007 à 11:25
tiens, moi aussi je connais Ctrl C / Ctrl V

 RECHERCHEV
Afficher tout
Masquer tout
Recherche une valeur donnée dans la première colonne d'une matrice
et renvoie une valeur dans la même ligne d'une autre colonne dans la
matrice.

La lettre V dans RECHERCHEV signifie « verticale ». Utilisez la
fonction RECHERCHEV au lieu de la fonction RECHERCHEH lorsque vos valeurs de
comparaison se trouvent dans une colonne située à gauche des données à
trouver.

Syntaxe
RECHERCHEV(valeur_cherchée;matrice;no_index_col;valeur_proche)

valeur_cherchée  Valeur à trouver dans la première colonne de la
matrice (matrice : permet de créer des formules uniques permettant d'obtenir
plusieurs résultats et qui agissent sur un groupe d'arguments répartis dans des
lignes et des colonnes. Une plage matricielle partage une même formule tandis
qu'une constante matricielle est un groupe de constantes qui sert d'argument.).
L'argument valeur_cherchée peut être une valeur ou une référence. Si l'argument
valeur_cherchée est inférieur à la plus petite valeur dans la première colonne
de la matrice, RECHERCHEV renvoie la valeur d'erreur #N/A.

matrice  Deux colonnes de données ou plus. Utilisez une référence
à une plage ou un nom de plage. Les valeurs de la première colonne de l'argument
matrice sont les valeurs cherchées par l'argument valeur_cherchée. Ces valeurs
peuvent être du texte, des nombres ou des valeurs logiques. Le texte ne respecte
pas la casse.

no_index_col  Numéro de la colonne de la matrice dont la valeur
correspondante doit être renvoyée. Si l'argument no_index_col est égal à
1, la fonction renvoie la
valeur dans la première colonne de la matrice ; si l'argument no_index_col est
égal à 2, la valeur est
renvoyée dans la deuxième colonne de la matrice, et ainsi de suite. Si
l'argument no_index_col est :

inférieur à 1, la fonction RECHERCHEV renvoie la valeur d'erreur #VALEUR!
;
est supérieur au nombre de colonnes de la
matrice, la fonction RECHERCHEV renvoie la valeur d'erreur
#REF!.
valeur_proche  Valeur logique indiquant si
vous souhaitez que la fonction RECHERCHEV trouve une correspondance exacte ou
voisine de celle que vous avez spécifiée :

Si cet argument est VRAI ou omis, une correspondance exacte ou
proche est renvoyée. Si aucune correspondance exacte n'est trouvée, la valeur
immédiatement inférieure à valeur_cherchée est renvoyée.
Les valeurs de la première colonne de la matrice doivent être
placées dans l'ordre de tri croissant ; sinon, RECHERCHEV peut ne pas donner la
valeur correcte. Vous pouvez placer les valeurs dans l'ordre croissant en
sélectionnant la commande Tri à partir du menu Données, puis en sélectionnant
Croissant. Pour plus d'informations, consultez Ordres de tri par
défaut.

Si l'argument est FAUX, RECHERCHEV ne recherchera qu'une
correspondance exacte. Dans ce cas, il n'est pas nécessaire de trier les valeurs
de la première colonne de la matrice. Si deux valeurs ou plus de la première
colonne de la matrice correspondent à valeur_cherchée, la première valeur
trouvée est utilisée. Si aucune correspondance exacte n'est trouvée, la valeur
d'erreur #N/A est renvoyée.
Remarques
Lorsque vous recherchez des valeurs de texte dans la première
colonne de la matrice, assurez-vous que les données de la première colonne de la
matrice ne commencent pas et ne se terminent pas par des espaces, qu'elles
n'utilisent pas de façon incohérente des apostrophes ou des guillemets droits
(' ou ") et courbés ( ‘ ou “), et qu'elles ne
comportent pas de caractères non imprimables. Dans ces cas, RECHERCHEV peut
donner une valeur incorrecte ou inattendue."
Lorsque vous recherchez des valeurs numériques ou des dates,
assurez-vous que les données de la première colonne de la matrice ne sont pas
stockées en tant que valeurs de texte. Dans ce cas, RECHERCHEV peut donner une
valeur incorrecte ou inattendue. Pour plus d'informations, consultez Convertir
les nombres stockés en tant que texte en nombres.
Exemple 1
L'exemple sera plus compréhensible si vous le copiez dans une
feuille de calcul vide.

 Procédure

Créez un classeur ou une feuille de calcul vide.
Sélectionnez l'exemple de la rubrique d'aide. Ne sélectionnez pas
les en-têtes des lignes ou des colonnes.

Sélection d'un exemple de l'aide

Appuyez sur CTRL+C.
Dans la feuille de calcul, sélectionnez la cellule A1 et appuyez
sur CTRL+V.
Pour passer de l'affichage des résultats à celui des formules
permettant de renvoyer les résultats, appuyez sur CTRL+` (apostrophe), ou dans
le menu Outils, pointez sur Audit des formules, puis cliquez sur Mode Audit de
formules.
Cet exemple parcourt la colonne Densité d'un tableau de propriétés
atmosphériques pour trouver les valeurs correspondantes dans les colonnes
Viscosité et Température. (Les valeurs correspondent à de l'air à 0 °C au niveau de la mer, soit
1 atmosphère).

   
1
2
3
4
5
6
7
8
9
10
 A B C
Densité Viscosité Température
0,457 3,55 500
0,525 3,25 400
0,616 2,93 300
0,675 2,75 250
0,746 2,57 200
0,835 2,38 150
0,946 2,17 100
1,09 1,95 50
1,29 1,71 0
Formule Description (résultat)
=RECHERCHEV(1;A2:C10;2) Recherche une valeur proche de la valeur
1 dans la colonne A,
trouve la valeur immédiatement inférieure ou égale à 1 dans la colonne A (0,946), puis retourne la valeur sur la
même ligne dans la colonne B. (2,17)
=RECHERCHEV(1;A2:C10;3;VRAI) Recherche une valeur proche de la
valeur 1 dans la colonne
A, trouve la valeur immédiatement inférieure ou égale à 1 dans la colonne A (0,946), puis retourne la valeur sur la
même ligne dans la colonne C. (100)
=RECHERCHEV(0,7;A2:C10;3;FAUX) Recherche une valeur
correspondant exactement à la valeur 0,7 dans la
colonne A. Dans la mesure où il n'y a aucune valeur correspondante dans la
colonne A, une erreur est renvoyée. (#N/A)
=RECHERCHEV(0,1;A2:C10;2;VRAI) Recherche une valeur proche de la valeur
0,1 dans la colonne A. Dans la mesure où
0,1 est inférieur à la plus petite valeur
dans la colonne A, une erreur est renvoyée. (#N/A)
=RECHERCHEV(2;A2:C10;2;VRAI) Recherche une valeur proche de la
valeur 2 dans la colonne
A, trouve la valeur immédiatement inférieure ou égale à 2 dans la colonne A (1,29), puis retourne la valeur sur la
même ligne dans la colonne B. (1,71)
 

Exemple 2
Vous comprendrez mieux l'exemple si vous le copiez dans une
feuille de calcul vide.

 Procédure

Créez un classeur ou une feuille de calcul vide.
Sélectionnez l'exemple dans la rubrique d'aide. Ne sélectionnez
pas les en-têtes de ligne ou de colonne.

Sélection d'un exemple de l'aide

Appuyez sur CTRL+C.
Dans la feuille de calcul, sélectionnez la cellule A1, puis
appuyez sur CTRL+V.
Pour passer de l'affichage des résultats à celui des formules qui
renvoient les résultats, appuyez sur CTRL+` (accent grave) ou, dans le menu
Outils, pointez sur Audit de formules, puis cliquez sur Mode Audit de
formules.
Cet exemple parcourt la colonne Réf-article d'un tableau de
produits pour bébés pour trouver les valeurs correspondantes dans les colonnes
Coût et Majoration pour calculer les prix et tester des
conditions.

   
1
2
3
4
5
6
 A B C D
Réf-article  Article  Coût  Majoration
ST-340 Poussette 145,67 ?  30 %
BI-567 Bavoir 3,56 ?  40 %
DI-328 Couches  21,45 ?  35 %
WI-989 Lingettes  5,12 ?  40 %
AS-469 Aspirateur 2,56 ?  45 %
Formule Description (résultat)
= RECHERCHEV("DI-328"; A2:D6; 3; FAUX) * (1 + RECHERCHEV("DI-328"; A2:D6; 4; FAUX))  Calcule le prix de détail d'un paquet de
couches en ajoutant le pourcentage de majoration au coût. (28,96
?)
= (RECHERCHEV("WI-989"; A2:D6; 3; FAUX) * (1 + RECHERCHEV("WI-989"; A2:D6; 4; FAUX))) * (1 - 20%) Calcule le prix de vente d'un paquet de lingettes en
soustrayant une remise spécifiée du prix de détail. (5,73
?)
 SI(RECHERCHEV(A2; A2:D6; 3; FAUX) > 20; "Majoration : " & 100 * RECHERCHEV(A2; A2:D6; 4, FAUX) &" %"; "Coût inférieur à 20,00
?") Affiche la majoration si le coût d'un article est
supérieur ou égal à 20,00 ? ;
sinon, affiche le coût. (Majoration : 30 %)
 SI(RECHERCHEV(A3; A2:D6; 3; FAUX) > 20; "Majoration : " & 100 * RECHERCHEV(A3; A2:D6; 4; FAUX) &"
%"; "Coût :" & RECHERCHEV(A3; A2:D6; 3, FAUX) & " ?")  Affiche la majoration si le coût d'un article est supérieur ou
égal à 20,00 ? ; sinon, affiche le coût. (Coût :
3,56 ?)
 

Exemple 3
Vous comprendrez mieux l'exemple si vous le copiez dans une
feuille de calcul vide.

 Procédure

Créez un classeur ou une feuille de calcul vide.
Sélectionnez l'exemple dans la rubrique d'aide. Ne sélectionnez
pas les en-têtes de ligne ou de colonne.

Sélection d'un exemple de l'aide

Appuyez sur CTRL+C.
Dans la feuille de calcul, sélectionnez la cellule A1, puis
appuyez sur CTRL+V.
Pour passer de l'affichage des résultats à celui des formules qui
renvoient les résultats, appuyez sur CTRL+` (accent grave) ou, dans le menu
Outils, pointez sur Audit de formules, puis cliquez sur Mode Audit de
formules.
Cet exemple parcourt la colonne ID d'un tableau d'employés pour
trouver les valeurs correspondantes dans d'autres colonnes pour calculer l'âge
et tester des conditions d'erreur.

   
1
2
3
4
5
6
7
 A B C D E
ID  Nom  Prénom  Poste Date de naissance
1 Davolio Nancy Agent commercial  08/12/1968
2 Fuller Andrew Vice-président, ventes 19/02/1952
3 Leverling Janet Agent commercial 30/08/1963
4 Peacock Margaret Agent commercial 19/09/1958
5 Buchanan Steven Directeur des ventes 04/03/1955
6 Suyama Michael Agent commercial  02/07/1963
Formule Description (résultat)
=ENT(FRACTION.ANNEE(DATE(2004;6;30); RECHERCHEV(5;A2:E7;5; FAUX); 1)) Pour l'année fiscale 2004, recherche l'âge de l'employé avec
l'ID 5. Utilise la
fonction FRACTION.ANNEE pour soustraire la date
de naissance de la date
de fin de l'année fiscale et affiche le résultat sous
forme d'un entier à l'aide de la fonction ENT. (49)
SI(ESTNA(RECHERCHEV(5;A2:E7;2;FAUX))  VRAI; "Employé introuvable"; RECHERCHEV(5;A2:E7;2;FAUX)) Si un employé avec l'ID 5 existe, affiche le nom de l'employé ;
sinon, affiche le message « Employé introuvable ». (Buchanan)
La fonction ESTNA renvoie une valeur VRAI lorsque la fonction
RECHERCHEV renvoie la valeur d'erreur #NA.
 
SI(ESTNA(RECHERCHEV(15;A3:E8;2;FAUX))  VRAI; "Employé introuvable"; RECHERCHEV(15;A3:E8;2;FAUX)) Si un employé avec l'ID
15 existe, affiche le nom
de l'employé ; sinon, affiche le message « Employé introuvable ». (Employé
introuvable)
La fonction ESTNA renvoie une valeur VRAI lorsque la fonction
RECHERCHEV renvoie la valeur d'erreur #NA.
 
=RECHERCHEV(4;A2:E7;3;FAUX) & "
" & RECHERCHEV(4;A2:E7;2;FAUX) & " occupe le poste suivant : " & RECHERCHEV(4;A2:E7;4;FAUX) & "." Pour l'employé avec l'ID 4, concatène les valeurs de trois cellules dans une phrase
complète. (Margaret Peacock occupe le poste suivant : Agent
commercial).

~
<small>[code.aspx?ID=39466 Mortalino] ~
Colorisation automatique</small>

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
0
JM247L Messages postés 443 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 1 mars 2011 2
31 août 2007 à 11:38
Whaou !!! En forme Mortalino depuis que tu as subit une mutation ... j'ai vu aussi que JRivet avait subit le même sort

JML
 Partageons notre savoir et nos acquis
0
Rejoignez-nous