Bonsoir
Les colonnes étant cachées je n'avais pas vu les données
Ci dessous la macro modifiée
j = 3
If IsNumeric(Mid((Sheets(i).Name), 1, 5)) Then ' si l'onglet à 5 carractères numériques
'recherche de la ligne dans "Donnée Last version"
For j1 = 4 To Sheets("Donnée Last version").Range("B65536").End(xlUp).Row
data1 = Sheets(i).Name 'onglet
data2 = Sheets("Donnée Last version").Range("B" & j1) ' valeur cherchée dans l'onglet
If Len(data2) > 0 And Len(data1) > 0 Then ' pour éviter des longueurs nulle ( voir l'aide de InStr )
If InStr(1, data1, data2, 1) > 0 Then ' si le nombre est présent dans l'onglet
Sheets(nomfeuille1).Cells(i, j) = Sheets("Donnée Last version").Range("F" & j1): j = j + 1
Sheets(nomfeuille1).Cells(i, j) = Sheets("Donnée Last version").Range("H" & j1): j = j + 1
Sheets(nomfeuille1).Cells(i, j) = Sheets("Donnée Last version").Range("J" & j1): j = j + 1
Sheets(nomfeuille1).Cells(i, j) = Sheets("Donnée Last version").Range("K" & j1): j = j + 1
Sheets(nomfeuille1).Cells(i, j) = Sheets("Donnée Last version").Range("N" & j1): j = j + 1
Sheets(nomfeuille1).Cells(i, j) = Sheets("Donnée Last version").Range("K" & j1): j = j + 1
Exit For
End If
End If
Next j1
'Sheets(nomfeuille1).Cells(i, j) = Sheets(i).Name: j = j + 1
Sheets(nomfeuille1).Cells(i, j) = Sheets(Sheets(i).Name).Range("AA2"): j = j + 1
Sheets(nomfeuille1).Cells(i, j) = Sheets(Sheets(i).Name).Range("AA3"): j = j + 1
' a compléter en indiquant la cellule contenant les données
'Sheets(nomfeuille1).Cells(i, j) = Sheets(Sheets(i).Name).Range("G3"): j = j + 1
End If
A rajouter en dernière ligne
Sheets("Sommaire").Columns("A:M").Columns.AutoFit
Bon courage
JP