Je vais d'abord laisser cheyenne faire avec deux tableaux.
Je ne reviendrai que s'il ne s'en sort pas seul. Cela permettra de "former" deux membres à la fois.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionComme tu le vois, je n'ai aucun problèmes, tu peux donc continuer avec robby98800
Sub tabex() derniere_ligne = Sheets(2).Range("C1").End(xlDown).Row Dim tab_exa() ReDim tab_exa(derniere_ligne - 2, 2) Dim tab_exb(215, 2) For i = 2 To derniere_ligne - 2 tab_exa(i, 0) = Sheets(2).Range("C" & i + 2) tab_exa(i, 1) = Sheets(2).Range("F" & i + 2) tab_exa(i, 2) = Sheets(2).Range("G" & i + 2) Next i For j = 2 To UBound(tab_exb, 1) tab_exb(j, 0) = Sheets(3).Range("A" & j) tab_exb(j, 1) = Sheets(3).Range("B" & j) tab_exb(j, 2) = Sheets(3).Range("C" & j) Next j For i = 2 To UBound(tab_exa, 1) For j = 2 To UBound(tab_exb, 1) If tab_exa(i, 0) = tab_exb(j, 0) Then If tab_exa(i, 1) >= tab_exb(j, 1) And tab_exa(i, 1) <= tab_exb(j, 2) Then tab_exa(i, 2).Value = "couche" End If End If Next j Next i Range("G2:G" & [G65536].End(xlUp).Row).Value = tab_exa(i - 1, 2) End Sub
tablo3 = Sheets("Feuil3").Range("A2:C" & derlig2)
tablo3 = Sheets("Feuil3").Range("A2:C" & derlig3)
For i = 1 To UBound(tablo1) For j = 1 To UBound(tablo2) If Sheets("Fiche_machine").Range("A1") = tablo2(j, 2) Then If tablo1(i, 2) = tablo2(j, 1) Then If tablo1(i, 1) = tablo2(j, 5) Then If tablo2(j, 8) <= 14 Then tablo1(i, 3) = tablo2(j, 3) End If End If End If End If Next j Next i Sheets("Fiche_machine").Range("A22:C" & derlign1) = tablo1 End Sub