Re : Erreur 13 : Incompatibilité de type
Job 75 : Effectivement ça ne peut pas marcher dans ce cas.. Je viens d'essayer avec "For Each c(2).Resize(h)" puis un If, mais cela ne fonctionne pas non plus. Savez-vous s'il existe un connecteur semblable prenant en compte les plages ?
Pierrot 93 : Voici le code en entier, j'hésitais à le poster car il est assez long :
Dim f$, h&, c As Range, ficha$, fichb$, n As Long
f = "Ventes et Stocks Magasins"
h = Application.Match("TOTAL", [C:C], 0) - 9 'la hauteur du tableau peut varier
Application.ScreenUpdating = False
Application.DisplayAlerts = False 'si des fichiers n'existent pas
For Each c In Range("E8", Cells(8, Columns.Count).End(xlToLeft))
If c = "Vtes" Then
ficha = "H:\DC_01\Data Sharing\Semaines étudiées\[Litté S" & Val(Replace(c(0, 0), "Semaine", "")) & ".xlsx]"
fichb = "H:\DC_01\Data Sharing\Semaines étudiées\[Litté S" & Val(Replace(c(0, 0), "Semaine", "")) + n & ".xlsx]"
c(2).Resize(h) = "=IFERROR(VLOOKUP(RC1,'" & ficha & f & "'!R4C1:R20000C22,21,0),0)"
If c(2).Resize(h) = 0 Then
For n = 0 To -10
c(2, 2).Resize(h) = "=IFERROR(VLOOKUP(RC1,'" & fichb & f & "'!R4C1:R20000C22,22,0),0)"
Exit For
c(2, 2).Resize (h) <> 0
Next
Else: c(2, 2).Resize(h) = "=IFERROR(VLOOKUP(RC1,'" & ficha & f & "'!R4C1:R20000C22,22,0),0)"
End If
End If
Next
End Sub