Recherche dans tableau
Bonjour,
Je souhaite effectuer une recherche de date dans un tableau, pour un retourner un résultat dans un autre cellule.
Dans la première colonne, j'ai des numéros de logements
Dans la 2em colonne j'ai des date de travaux de plomberie
Dans la 2em colonne j'ai des dates de travaux d'électricité ....
En sélectionnant uen date, je voudrais que ca me retourne la lise des logement dans laquelle il y a des travux.
j'ai essayé : =INDEX(A$3:A$17;PETITE.VALEUR(SI(B$3:C$17=F$2;LIGNE(A$3:A$17);"");LIGNES(A1)))
mais sans succès.
Je cherche une solution avec calcul de préférence, sinon avec macro ca pourrait aller.
Merci
vinny
Merci a vous deux.
@ Amadéus, ta réponse convient parfaitement pour mon exemple. Le cas réel étant plus complexe, la formule devenait trop lourde et ingérable...
je suis donc passé avec des macro. Pour ceux que ca intéresse, voici mon bidouillage :
Sub Macro_tri_logement_générale()
Dim nb_lgt As Long
Dim nb_CE As Integer
Feuil8.Select
Range("C:AA").ClearContents
'boucle par cet
nb_CE = Feuil2.Range("IV3").End(xlToLeft).Column
'copie de toutes les dates dans "Calcul"
For i = 5 To nb_CE
'copie lgt
nb_lgt = Feuil2.Range("C" & Rows.Count).End(xlUp).Row
Feuil2.Select
Range(Cells(4, 3), Cells(nb_lgt, 3)).Copy
Feuil8.Select
Range("D" & (i - 5) * (nb_lgt - 3) + 1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
'copie dates
Feuil2.Select
Range(Cells(4, i), Cells(nb_lgt, i)).Copy
Feuil8.Select
Cells((i - 5) * (nb_lgt - 3) + 1, 5).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
'CE filldown
Feuil2.Select
Cells(3, i).Copy
Feuil8.Select
Range(Cells((i - 5) * (nb_lgt - 3) + 1, 3), Cells((i - 4) * (nb_lgt - 3), 3)).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Next
'Tri des logements par date
Dim nb_liste As Long
nb_liste = Feuil8.Range("C" & Rows.Count).End(xlUp).Row
Feuil8.Select
With Feuil8.Range("C1:E" & nb_liste)
.AutoFilter
.AutoFilter Field:=3, Criteria1:=Feuil4.Range("P2")
End With
'copie logements
Range("d1:d" & nb_liste).SpecialCells(xlCellTypeVisible).Copy
Feuil4.Range("U2").PasteSpecial Paste:=xlPasteValues
'copie CE
Range("C1:C" & nb_liste).SpecialCells(xlCellTypeVisible).Copy
Feuil4.Range("q2").PasteSpecial Paste:=xlPasteValues
'copie Date
Range("e1:e" & nb_liste).SpecialCells(xlCellTypeVisible).Copy
Feuil4.Range("r2").PasteSpecial Paste:=xlPasteValues
End SubBonne soirée
Vinny