Bonjour a tous,
Je suis actuellement en thèse de biologie, et j’aurais besoin de votre aide.
Cela fait plusieurs heures que je m’arrache les cheveux à essayer d’utiliser l’ensemble des fonctions recherche sans obtenir le résultats que je souhaite.
Voilà ma situation :
j’ai créer un plan d’expérience où chaque case représente un de mes individus numéroté de la sorte, les numéros correspondant à la position dans mon plan :
Ensuite j’ai attribué de manière aléatoire des numéro (sans doublon) à mes individus
Mon objectif serait d’ajouter une colonne à mon tableau avec la position en ligne et en colonne de mon individu sur mon plan, en allant chercher son numéro de position dans le plan et renvoyant son adresse. Pour ensuite m’y retrouver plus facilement dans mon expérimentation (1200 individus).
J’ai essayé les fonctions index() et equiv () mais je n’arrive pas à obtenir ce que je souhaite, et mes compétence en VBA sont malheureusement très limité et j’aimerai éviter d’y avoir recourt.
Sub Cherche()
'Déclaration des variables
Dim i%, j%, No%, Dl%
Dl = Range("A" & Rows.Count).End(xlUp).Row 'n° de la dernière ligne non vide de la colonne A
Sheets("Feuil2").Range("E2:E" & Dl).ClearContents 'efface les adresses feuil2
For No = 2 To Dl '1ère boucle sur la colonne E feuil2
For i = 2 To 21 '2ème boucle ligne feuil plan
For j = 2 To 10 '3ème boucle colonne plan
If Sheets("plan").Cells(i, j).Value = Sheets("Feuil2").Cells(No, 4).Value Then 'Si le chiffre est trouvé
Sheets("Feuil2").Cells(No, 5).Value = Sheets("plan").Cells(i, j).Address 'renseigne sur Feuil2 son adresse
End If
Next j
Next i
Next No
End Sub
Avec cette formule dans le gestionnaire de noms, c’est mieux
=DECALER(plan!$B$2:$J$2;;;NBVAL(plan!$B:$B))
On ne prend avec NBVAL qu’une colonne, celle qui est remplit du haut en bas sans cellule vide,
le -1, est mis en place simplement si il y a un titre en ligne 1, mais comme tu pars de la ligne 2 , NBVAL compte le NB cellule non vide de la colonne B.
S’il y avait un titre, il aurait fallu ce -1 pour déduire une valeur