Fonction logique "SI" dans Excel
Résolu/Fermé
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
-
1 oct. 2009 à 14:07
Aragorn001 Messages postés 96 Date d'inscription jeudi 5 juin 2008 Statut Membre Dernière intervention 26 décembre 2020 - 1 oct. 2009 à 23:37
Aragorn001 Messages postés 96 Date d'inscription jeudi 5 juin 2008 Statut Membre Dernière intervention 26 décembre 2020 - 1 oct. 2009 à 23:37
A voir également:
- Fonction logique "SI" dans Excel
- Fonction si et - Guide
- Liste déroulante excel - Guide
- Excel cellule couleur si condition texte - Guide
- Fonction moyenne excel - Guide
- Word et excel gratuit - Guide
13 réponses
Raymond PENTIER
Messages postés
58798
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
6 janvier 2025
17 263
1 oct. 2009 à 14:47
1 oct. 2009 à 14:47
Bonjour.
"En sachant que "bv09002", "bv09003" etc... se trouvent dans ma feuille de données principale, n'y a-t-il pas moyen d'éviter justement de tout devoir retaper (risques d'erreurs) et d'aller justement rechercher ces données dans ma 1ère feuille."
Utiliser un tableau de 2 lignes et la fonction RECHERCHEH() devrait solutionner ce problème.
"En sachant que "bv09002", "bv09003" etc... se trouvent dans ma feuille de données principale, n'y a-t-il pas moyen d'éviter justement de tout devoir retaper (risques d'erreurs) et d'aller justement rechercher ces données dans ma 1ère feuille."
Utiliser un tableau de 2 lignes et la fonction RECHERCHEH() devrait solutionner ce problème.
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
1 oct. 2009 à 16:38
1 oct. 2009 à 16:38
Re,
Je ne connais pas du tout :-). mais ça en essais-erreurs ça devrait aller...
Quant à mettre le tableau en 2 lignes, ça ne va pas me paraître possible, il est composé de + de 3000 lignes (sur ma page de données)
Avez-vous pu charger le dossier .xlsx pour visualiser le tout ? Apparemment ça me semble bizarre, je ne le trouve pas lorsque je suis le lien.
Bien à vous
Fab
Je ne connais pas du tout :-). mais ça en essais-erreurs ça devrait aller...
Quant à mettre le tableau en 2 lignes, ça ne va pas me paraître possible, il est composé de + de 3000 lignes (sur ma page de données)
Avez-vous pu charger le dossier .xlsx pour visualiser le tout ? Apparemment ça me semble bizarre, je ne le trouve pas lorsque je suis le lien.
Bien à vous
Fab
Bonjour,
Le nombre maximum de Si imbriquée est de 64, je pense que cela ne devrait pas car le nombre des [bv09002, br….. ] et supérieur a 64.
Toutefois pouvez-vous expliquer d’ou vient la valeur ["VP53125"] (son lien avec [bv09002] ?
Le nombre maximum de Si imbriquée est de 64, je pense que cela ne devrait pas car le nombre des [bv09002, br….. ] et supérieur a 64.
Toutefois pouvez-vous expliquer d’ou vient la valeur ["VP53125"] (son lien avec [bv09002] ?
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
1 oct. 2009 à 17:04
1 oct. 2009 à 17:04
La valeur "VP53125" et autres doit être encodée actuellement à la main. Ce sont des valeurs qui n'ont rien à voir avec la feuille de données. Ce sont des valeurs dans un autre programme spécifique à la société et qui n'est pas compatible avec Excel, d'où l'encodage à la main.
Mais elles sont toujours en relation avec leurs données Excel (Chaque facture avec un mouvement [bv09002] va par exemple recevoir l'attribut [VP53125]). Ca c'est la comptable du boulot qui connaît les références à attribuer.
Moi j'ai simplement fais le tableau en dynamique, car avant, elle retranscrivait tout lol.
j'aimerais, vu qu'elle a son tableau tout fait maintenant, qu'à chaque fois que les références [bv, vt,etc...] apparaissent, les [VP etc...] soent en relation, chose faisable avec SI mais avec max 64 possibilités.
Mais elles sont toujours en relation avec leurs données Excel (Chaque facture avec un mouvement [bv09002] va par exemple recevoir l'attribut [VP53125]). Ca c'est la comptable du boulot qui connaît les références à attribuer.
Moi j'ai simplement fais le tableau en dynamique, car avant, elle retranscrivait tout lol.
j'aimerais, vu qu'elle a son tableau tout fait maintenant, qu'à chaque fois que les références [bv, vt,etc...] apparaissent, les [VP etc...] soent en relation, chose faisable avec SI mais avec max 64 possibilités.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 419
1 oct. 2009 à 17:20
1 oct. 2009 à 17:20
Bonjour
Je n'ai pas pu lire votre fichier, son formatage ne passe pas, mais je crois que vous devriez revenir sur le message de Raymond qui semble correspondre parfaitement à votre question:
si on se référe à votre formule SI:
Faites hors champ ou dans une feuille cachée un tableau_ EN COLONNE_ de correspondance sur deux colonnes de ce que vous voulez obtenir, par exemple en A les codes bv et en B en ligne, les codes V correspondants à chaque fois.
Ensuite, dans votre cellule résultat:
=RECHERCHEV(B7;votre champ de référence;2;0)
va vous renvoyer exactement le même résultat que la formule si que vous proposez, le tableau de référence remplaçant(avantageusement) les valeurs que vous mettriez dans la formule.
Quand aux 3000 lignes, je pense qu'elles concernent le tableau à traiter et pas celui des références à établir que Raymond vous propose, il suffira donc de tirer la formule recherche en bloquant les limites du champ de référence
Nota: pour revenir encore sur la propistion de Raymond, on peut préciser que effectivement si vos références bv sont en ligne, il suffit de construire le champ en plaçant au dessous les références V correspondantes. Dans ce cas, la formule RECHERCHEH s'applique.
Crdlmnt
Je n'ai pas pu lire votre fichier, son formatage ne passe pas, mais je crois que vous devriez revenir sur le message de Raymond qui semble correspondre parfaitement à votre question:
si on se référe à votre formule SI:
Faites hors champ ou dans une feuille cachée un tableau_ EN COLONNE_ de correspondance sur deux colonnes de ce que vous voulez obtenir, par exemple en A les codes bv et en B en ligne, les codes V correspondants à chaque fois.
Ensuite, dans votre cellule résultat:
=RECHERCHEV(B7;votre champ de référence;2;0)
va vous renvoyer exactement le même résultat que la formule si que vous proposez, le tableau de référence remplaçant(avantageusement) les valeurs que vous mettriez dans la formule.
Quand aux 3000 lignes, je pense qu'elles concernent le tableau à traiter et pas celui des références à établir que Raymond vous propose, il suffira donc de tirer la formule recherche en bloquant les limites du champ de référence
Nota: pour revenir encore sur la propistion de Raymond, on peut préciser que effectivement si vos références bv sont en ligne, il suffit de construire le champ en plaçant au dessous les références V correspondantes. Dans ce cas, la formule RECHERCHEH s'applique.
Crdlmnt
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 419
1 oct. 2009 à 17:34
1 oct. 2009 à 17:34
Beuh non ponpon, ça m'aurait pourtant bien plu.....
Mais j'obtiens une cascade de dossiers et de fichiers dont aucun ne me donne la main pour renommer!
si un jour tu as la solution n'hésite pas.Moii, je suis trop nul dans ce domaine.
merci quand même c'était une bonne intention.
crdlmn t
Mais j'obtiens une cascade de dossiers et de fichiers dont aucun ne me donne la main pour renommer!
si un jour tu as la solution n'hésite pas.Moii, je suis trop nul dans ce domaine.
merci quand même c'était une bonne intention.
crdlmn t
Bonjour Vaucluse,
En détail :
Télécharger en enregistrant sur le bureau (vous obtenez un fichier ZIP : cijtRx72rJ.zip)
Surtout ne pas l’ouvrir !
Clic droit sur le fichier et clic Renommer
Remplacer l’extension zip par xlsx
Clie Enter et au message d’avertissement clic OK.
Vous avez maintenant un fichier Excel.
En détail :
Télécharger en enregistrant sur le bureau (vous obtenez un fichier ZIP : cijtRx72rJ.zip)
Surtout ne pas l’ouvrir !
Clic droit sur le fichier et clic Renommer
Remplacer l’extension zip par xlsx
Clie Enter et au message d’avertissement clic OK.
Vous avez maintenant un fichier Excel.
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
>
ponpon
1 oct. 2009 à 18:48
1 oct. 2009 à 18:48
Juste,
Il suffit d'ajouter .xlsx à la place de .zip, d'ouvrir Excel et ensuite d'ouvrir le fichier.
Encore une astuce :-)
Fab
Il suffit d'ajouter .xlsx à la place de .zip, d'ouvrir Excel et ensuite d'ouvrir le fichier.
Encore une astuce :-)
Fab
BonjourAragorn001,
Vous avez plus de 120 lots donc la fonction SI() aura une indi …..
Sur feuille [Données] 2 colonnes en BA et BB avec tire [n°lot] et [Vp fictif] et j’ai nommé la plage [vpcode] et fait référence à : =Données!$BA$2:$BB$125
Exemple avec la fonction RECHERCHEV() ; voir [Vétés] : https://www.cjoint.com/?kbsbUwsjQ2
Vous avez plus de 120 lots donc la fonction SI() aura une indi …..
Sur feuille [Données] 2 colonnes en BA et BB avec tire [n°lot] et [Vp fictif] et j’ai nommé la plage [vpcode] et fait référence à : =Données!$BA$2:$BB$125
Exemple avec la fonction RECHERCHEV() ; voir [Vétés] : https://www.cjoint.com/?kbsbUwsjQ2
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
1 oct. 2009 à 18:58
1 oct. 2009 à 18:58
Par contre, encore une petite question...
N'y a t'il pas moyen d'inclure dans la formule une demande que si il n'y a rien dans les cellules de la ligne 7, il ne me mette pas #N/A ?
Je sais que c'est parce qu'il ne trouve pas de correspondance à sa demande mais si le résultat pouvait ne pas apparaître.
=RECHERCHEV(Y$7;vpcode;2;FAUX); Si (Y7="vide" alors Y4="vide")
Etant donné que lorsque qu"on choisit d'autres options de tri (regroupement par ex) la commande N° de lot est modifiée.
N'y a t'il pas moyen d'inclure dans la formule une demande que si il n'y a rien dans les cellules de la ligne 7, il ne me mette pas #N/A ?
Je sais que c'est parce qu'il ne trouve pas de correspondance à sa demande mais si le résultat pouvait ne pas apparaître.
=RECHERCHEV(Y$7;vpcode;2;FAUX); Si (Y7="vide" alors Y4="vide")
Etant donné que lorsque qu"on choisit d'autres options de tri (regroupement par ex) la commande N° de lot est modifiée.
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 419
>
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1 oct. 2009 à 20:24
1 oct. 2009 à 20:24
Bonsoir
Seulement si Y7 est vide:
=SI(ESTVIDE(Y7);0;=RECHERCHEV(Y$7;vpcode;2;FAUX))
Si , en plus,la valeur de Y7 risque de ne pas se trouver dans le tableau, mieux vaut
=SI(ESTNA(RECHERCHEV(Y$7;vpcode;2;FAUX);"";=RECHERCHEV(Y$7;vpcode;2;FAUX) )
ou
=SI(ESTERREUR(RECHERCHEV(Y$7;vpcode;2;FAUX);"";=RECHERCHEV(Y$7;vpcode;2;FAUX) )
Crdlmnt
Seulement si Y7 est vide:
=SI(ESTVIDE(Y7);0;=RECHERCHEV(Y$7;vpcode;2;FAUX))
Si , en plus,la valeur de Y7 risque de ne pas se trouver dans le tableau, mieux vaut
=SI(ESTNA(RECHERCHEV(Y$7;vpcode;2;FAUX);"";=RECHERCHEV(Y$7;vpcode;2;FAUX) )
ou
=SI(ESTERREUR(RECHERCHEV(Y$7;vpcode;2;FAUX);"";=RECHERCHEV(Y$7;vpcode;2;FAUX) )
Crdlmnt
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
>
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
1 oct. 2009 à 21:00
1 oct. 2009 à 21:00
Bonsoir,
=SI(ESTVIDE(Y7);0;=RECHERCHEV(Y$7;vpcode;2;FAUX)) fonctionne uniquement si Y7 est vide donc pas utilisable ici car la ligne 7 n'est pas toujours vide et sa longueur dépend des filtres utilisés.
=SI(ESTNA(RECHERCHEV(Y$7;vpcode;2;FAUX);"";=RECHERCHEV(Y$7;vpcode;2;FAUX)) - Message d'erreur : vous avez tapé un nombre trop important d'arguments pour cette fonction
=SI(ESTERREUR(RECHERCHEV(Y$7;vpcode;2;FAUX);"";=RECHERCHEV(Y$7;vpcode;2;FAUX)) - Message d'erreur : idem
vpcode reprend les données à insérer [vp01253, etc...] et est en deux colonnes. Je me demandais si j'attribuais à vpcode une troisième colonne vide s'il ne serait pas plus facile d'intégrer lacase vide dans la formule !?
Merci des conseils
Fab
=SI(ESTVIDE(Y7);0;=RECHERCHEV(Y$7;vpcode;2;FAUX)) fonctionne uniquement si Y7 est vide donc pas utilisable ici car la ligne 7 n'est pas toujours vide et sa longueur dépend des filtres utilisés.
=SI(ESTNA(RECHERCHEV(Y$7;vpcode;2;FAUX);"";=RECHERCHEV(Y$7;vpcode;2;FAUX)) - Message d'erreur : vous avez tapé un nombre trop important d'arguments pour cette fonction
=SI(ESTERREUR(RECHERCHEV(Y$7;vpcode;2;FAUX);"";=RECHERCHEV(Y$7;vpcode;2;FAUX)) - Message d'erreur : idem
vpcode reprend les données à insérer [vp01253, etc...] et est en deux colonnes. Je me demandais si j'attribuais à vpcode une troisième colonne vide s'il ne serait pas plus facile d'intégrer lacase vide dans la formule !?
Merci des conseils
Fab
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
1 oct. 2009 à 18:20
1 oct. 2009 à 18:20
Ca c'est un Ponpon :-)
Parfait, il ne me reste plus qu'à étudier la fonction (pour plus tard).
Je vais proposer le fichier demain au boulot. A mon avis, ça va plaire à la comptable.
Merci à vous deux pour le coup de main.
Fab
Parfait, il ne me reste plus qu'à étudier la fonction (pour plus tard).
Je vais proposer le fichier demain au boulot. A mon avis, ça va plaire à la comptable.
Merci à vous deux pour le coup de main.
Fab
Raymond PENTIER
Messages postés
58798
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
6 janvier 2025
17 263
1 oct. 2009 à 21:05
1 oct. 2009 à 21:05
Fab, ce que tu décris au post 4, c'est ce à quoi j'ai répondu dans mon post 1 !
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
1 oct. 2009 à 21:19
1 oct. 2009 à 21:19
Bonsoir Raymond,
Je ne connaissais pas du tout la fonction RECHERCHEH, donc un peu dans le brouillard :-). Et l'histoire de 2 lignes me paraissaît bizarre (suis pas encore très calé en Excel) vu que je devais travailler en colonnes
Ponpon me demandait la relation entre les différentes données d'où le Post 4. Vaucluse et lui m'ont trouvé une solution en utilisant RECHERCHEV (que je ne connaissais pas plus lol).
Mon problème est presque résolu, il ne me reste plus qu'à ne pas afficher de valeur lorsqu'il n'y a rien à afficher (voir plus haut), grâce à vous trois.
Encore un grand merci à tous pour votre aide
Fab
Je ne connaissais pas du tout la fonction RECHERCHEH, donc un peu dans le brouillard :-). Et l'histoire de 2 lignes me paraissaît bizarre (suis pas encore très calé en Excel) vu que je devais travailler en colonnes
Ponpon me demandait la relation entre les différentes données d'où le Post 4. Vaucluse et lui m'ont trouvé une solution en utilisant RECHERCHEV (que je ne connaissais pas plus lol).
Mon problème est presque résolu, il ne me reste plus qu'à ne pas afficher de valeur lorsqu'il n'y a rien à afficher (voir plus haut), grâce à vous trois.
Encore un grand merci à tous pour votre aide
Fab
Bonjour,
J’ai adapté la formule pour tenir compte de votre demande.
https://www.cjoint.com/?kbwsE0H1Wn
J’ai adapté la formule pour tenir compte de votre demande.
https://www.cjoint.com/?kbwsE0H1Wn
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
1 oct. 2009 à 23:07
1 oct. 2009 à 23:07
Merci, impec
Une bonne soirée à vous tous
Fab
Une bonne soirée à vous tous
Fab
Aragorn001
Messages postés
96
Date d'inscription
jeudi 5 juin 2008
Statut
Membre
Dernière intervention
26 décembre 2020
1
1 oct. 2009 à 23:37
1 oct. 2009 à 23:37
Tout à fait, je l'ai même déjà modifiée pour essais.
Je laisse ça à la personne concernée ;-)
@+
Fab
Je laisse ça à la personne concernée ;-)
@+
Fab