IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

INDIRECT sur autre feuille


Sujet :

Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 593
    Points : 153
    Points
    153
    Par défaut INDIRECT sur autre feuille
    Bonjour,

    Je tourne en rond...

    Dans une cellule de la feuille "Sélection", j'ai
    =PETITE.VALEUR(INDIRECT(Adresse_Plage_Noms);1)
    Adresse_Plage_Noms se trouve sur la feuille "Référence" et renvoie ce résultat : $C$6:$C$48

    Tout fonctionne normalement, mais...

    Si j'inscris la formule
    =PETITE.VALEUR(INDIRECT(Adresse_Plage_Noms);1)
    dans une cellule de la feuille "Référence", ça ne marche plus !

    Un peu perdu !

    En vous remerciant par avance pour votre aide,
    Cordialement,
    jp

  2. #2
    Membre expérimenté Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 903
    Points : 1 364
    Points
    1 364
    Par défaut
    Bonjour,

    Essaies ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =PETITE.VALEUR(INDIRECT("'Référence'!" & Adresse_Plage_Noms);1)
    Cordialement,
    Le sabre est une arme. Le kendo est un art de tuer. Quelles que soient les belles paroles pour l'expliquer, telle est sa vérité.

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 593
    Points : 153
    Points
    153
    Par défaut
    Bonjour,

    Merci pour cette proposition.
    A priori, ça ne fonctionne pas.

    Indépendamment de cette question précise, l'idée de base était de récupérer les 2 plus PETITE(s).VALEUR(s) d'une plage, hors zéros.

    A ce stade, la seule solution que j'ai trouvée est :

    Plus petite valeur (hors zéro) >>
    {=MIN(SI(Plage_Total>0;Plage_Total))}
    Et
    Valeur juste au dessus de la plus petite valeur (hors zéro) >>
    {=MIN(SI(Plage_Total>C10;Plage_Total))}
    (Nota : C10 correspond à la plus petite valeur...)

    J'avais déjà utilisé une formule satisfaisante en VBA pour extraire les 3 plus petites valeurs :
    Range("BJ328:BJ330").FormulaArray = "=SMALL(IF(NOT(ISNA(MATCH(valsBis,valsBis,0))),IF((MATCH(valsBis,valsBis,0)=ROW(INDIRECT(""1:""&ROWS(valsBis))))*(valsBis>0),vals)),{1;2;3})"
    mais ici je cherchais une formule Excel (hors VBA)

    Cordialement,
    jp

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 593
    Points : 153
    Points
    153
    Par défaut
    @ Gado,

    Désolé, ta proposition fonctionne parfaitement !
    Merci encore,
    jp

  5. #5
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 926
    Points
    55 926
    Billets dans le blog
    131
    Par défaut
    Salut.

    Avec une plage comme celle que tu proposes, je me tournerais vers un tableau structuré => plus de problèmes liés au référencement de la feuille


    Pour exclure les 0 et en considérant que tes valeurs sont >= à 0, tu peux dénombrer les zéros. La plus petite valeur commence alors à nombre de 0 + 1

    Nom : 2021-05-12_195225.png
Affichages : 174
Taille : 8,1 Ko
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  6. #6
    Membre habitué
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 593
    Points : 153
    Points
    153
    Par défaut
    Bonjour Pierre,

    Merci pour cette proposition qui, sauf erreur de ma part, ne peut pas fonctionner car mes valeurs ne sont pas des entiers naturels, d'où le résultat : #NOMBRE!

    Ta formule adaptée à ma feuille :
    =PETITE.VALEUR(Tableau2[indice];NB.SI.ENS(Tableau2[indice];0+1))
    Nom : pour pierre.jpg
Affichages : 132
Taille : 18,2 Ko

    Cordialement,
    jp

  7. #7
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 926
    Points
    55 926
    Billets dans le blog
    131
    Par défaut
    Ce qui pose problème, ce ne sont pas tes valeurs, mais ta formule. Tu dois fermer la parenthèse AVANT le +1, sinon tu comptes le nombre de valeurs = 1 ( => 0) et tu cherches la 0ième petite valeur...=> #Nombre!

    Pour comprendre la raison d'une formule qui renvoie un résultat erroné, tu peux utiliser l'audit de formule en activant la cellule dont la formule pose problème (formules/Vérification des formules/Evaluer la formule)... Tu pourras alors exécuter la formule pas-à-pas et comprendre d'où vient l'erreur.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  8. #8
    Membre habitué
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 593
    Points : 153
    Points
    153
    Par défaut
    Bonjour Pierre,

    Désolé pour cette réponse très tardive (quand mon opérateur internet défaille... dé-FAI...)

    Magnifique ! Merci beaucoup !!!

    Cordialement,
    jp

    PS : et merci pour l'incitation à utiliser l'évaluateur de formule

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 08/08/2019, 08h33
  2. Réponses: 5
    Dernier message: 04/02/2016, 09h12
  3. [XL-2007] Copier coller une ligne excel sur autre feuille avec conditions
    Par amstelveen dans le forum Excel
    Réponses: 5
    Dernier message: 11/05/2009, 18h54
  4. Réponses: 1
    Dernier message: 05/03/2009, 17h44
  5. Recherche et copie sur autre feuille
    Par pipo159 dans le forum Excel
    Réponses: 1
    Dernier message: 04/06/2008, 19h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo