Il ne s'agit pas juste de savoir si c'est l'éléphant ou l'hippopotame le plus fort. Le choix des formules que vous utilisez à un véritable impact en terme d'utilisation de mémoire d'une part, et d'autre part dans le comportement de votre fichier en cas de modifications. Contrairement aux RechercheV et RechercheH la plage de la valeur cible n'a pas besoin d'être la première du tableau. RechercheV vous permet de décaler vers la droite, INDEX+EQUIV vous permet aussi d'aller vers la gauche. Faire une recherche avec plusieurs critères sur Excel - Formule Excel. Dans RechercheV, le décalage entre les colonnes est un chiffre en dur ( 2 dans l'exemple ci dessous). La formule ne marchera pas si vous rajoutez une colonne au milieu du tableau. La recherche du même résultat avec une formule RechercheV
Effet du rajout de colonne sur une REchercheV et un INDEX EQUIV
Autre problème venant de ce chiffre en dur dans le RechercheV, c'est qu'il faut compter le décalage à la main. 2 cellules ca va, mais vous allez vous amuser avec un tableau de 140 colonnes. En termes de mémoire, RechercheV prend comme argument toute la table de données, INDEX EQUIV seulement 2 colonnes.
- Index equiv multicritère 3
- Index equiv multicritère 20
- Index equiv multicritère et
- Index equiv multicritère plus
- Index equiv multicritère calculator
Index Equiv Multicritère 3
Columns(20) = resu
End With
Testez le fichier joint, sur les 17 888 lignes la macro s'exécute chez moi en 0, 15 seconde. Bonne journée. Test Index Equiv Array vSpinzi(1)
264. 4 KB · Affichages: 17
Dernière édition: 31 Octobre 2019
#4
Bonjour Bebere, Job75
@Bebere: merci bcp pour ce code qui tourne sans problème sur mes 200 000 lignes (- de 2 secondes). Index equiv multicritère et. Par contre, les résultats sont décalés d'une ligne. J'ai tenté de modifier le code mais sans succès:
Code:
Range("V2")(UBound(OBJET_PLAGE_RECHERCHE, 1), UBound(OBJET_PLAGE_RECHERCHE, 2)) = OBJET_PLAGE_RECHERCHE
car le code m'écrase la cellule V2
@job75: oui je sais que je ne sais pas utiliser les tableaux =)
Mon souhait est de ramener la date comptable pour les pièces de type "DZ" en fonction du type de pièce RV et d'un numéro de rapprochement. Mon explication n'est pas assez précise ou le fait d'utiliser des tableaux ne permet pas de repondre à mon besoin? Merci à vous pour vos retours,
Spinzi
#5
Dim debut As Date, x As String
Dim Rng As Range
Set Rng = Range("V3:V" & DerLigne)
earContents
ARRAY_PLAGE_RESULTAT = Range("A3:V" & DerLigne) '= zone verte
For i = 1 To UBound(ARRAY_PLAGE_RESULTAT, 1)
If Left(ARRAY_PLAGE_RESULTAT(i, 20), 2) = "DZ" Then
(i, 1) = ARRAY_PLAGE_RESULTAT(i, 8)
le code de Job est plus rapide
edit mis un nouveau code
#6
Re,
@Bebere: merci pour le code, seulement je n'ai pas compris l'argument que vous avez rajouté, pouvez vous m'expliquer?
Index Equiv Multicritère 20
La fonction Xmatch recherche un élément spécifié dans une matrice ou une plage de cellules, puis renvoie la position relative de l'élément. Dans cette section, nous allons utiliser XMATCH pour déterminer la position d'un élément dans une liste. Syntaxe
La fonction XMATCH renvoie la position relative d'un élément dans une matrice ou une plage de cellules. = XMATCH (lookup_value, lookup_array, [match_mode], [search_mode])
Argument
Description
valeur_cherchée
Obligatoire
Valeur de recherche
matrice_recherche
Tableau ou plage dans lequel Rechercher
[match_mode]
Facultatif
Spécifiez le type de match:
0-correspondance exacte (par défaut)
-1-match exact ou élément le plus petit suivant
1-match exact ou élément le plus grand supérieur
2-correspondance avec caractère générique où *,? Index equiv multicritère plus. et ~ ont une signification particulière. [search_mode]
Spécifiez le type de recherche:
1-recherche premier en dernier (par défaut)
-1-recherche de la dernière fois (recherche inverse). 2-effectuer une recherche binaire qui repose sur la lookup_array triée par ordre croissant.
Index Equiv Multicritère Et
C'est de moins en moins un problème avec la puissance des machines, mais ca peut vous sauver la vie sur une grosse table de bourrin. En Cadeau: Télécharge gratuitement le fichier Excel d'exemple, prêt à l'emploi
Index Equiv Multicritère Plus
Bonsoir à tous,
Après 3 jours de test intensifs, je craque...
Mon problème est pourtant simple et j'ai tenté d'appliquer ce que j'ai trouvé sur les forums mais en vain.... Voici le contexte: un tableau comportant 3 colonnes (info1, info2, info3)
Je souhaite récupérer l'info 3 à partir des infos 1&2. Exemple
Info1 Info2 Info3
i11 i21 i31
i11 i22 i32
i12 i21 i33
i12 i22 i34
i12 i23
Pour info1 = i12; info2 = i21 j'obtiens i33
Je sais que la formule s'écrit =INDEX(info3, EQUIV(1, (info1="i12")*(info2="i21"), 0)) mais rien à faire... je sors du #N/A sans arrêt.. une solution? LA méthode est-elle bonne? ai-je des soucis de format (pourtant j'ai vérifié! ), la définition de mon tableau avec les entête? Index equiv multicritère calculator. Un grand merci pour votre aide:)
Etienne
PS: la deuxième étape sera de passer sous vba avec la formule match et evaluate (oui oui j'ai déjà bcp cherché... )
Index Equiv Multicritère Calculator
C'est une formule matricielle, il faut donc la valider en appuyant en même temps sur Ctrl + Shift + Entrée
Pour aller plus loin: Dans cet exemple, nous avons considéré uniquement deux critères, mais vous pouvez imaginer une recherche à 3, 4 ou N critères sur le même principe! IL suffira simplement de combiner plusieurs critères avec plus de symboles &
Facile et rapide à mettre en place. Lisible pour une autre personne. Très fiable si bien construite. Ajout d'informations « doublons ». Une colonne de concaténation doit être ajoutée en première colonne de votre base. Concaténation avec INDEX et EQUIV
La méthode est la même que la précédente en combinant plusieurs critères de recherche pour n'en faire qu'un seul. À la différence de la première, le INDEXEQUIV permet de placer la colonne contenant les critères assemblés n'importe ou dans votre tableau au lieu d'en première position. INDEX EQUIV multi critères avec une liste de valeur à tester - Excel - Forum Formule Excel. Pour apprendre à utiliser cette combinaison de formules, nous vous invitons à lire l'article correspondant. Facile à mettre en place. Peu lisible pour une personne ne connaissant pas les formules INDEX et EQUIV. Alourdi le fichier à cause des formules. La formule
La formule permet de faire une somme en utilisant plusieurs critères. Mais cette formule peut être utilisée pour faire ressortir une information numérique en utilisant plusieurs critères non-numériques.