1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| Sub Extraire()
'feuille resultats de la colonne D3 a D200 NETTOYAGE
Sheets("Results").Range("D3:D200").ClearContents
'l'item derligne commencera feuille resultats en colonne D3 avec décalage rangée +1 si remplie
Derligne = Sheets("Results").Range("D3").End(xlUp).Row + 1
'boucle pour toute les feuilles,la valeur colonne D derniere ligne = sur cette 1ere feuille la valeur de la cellule B1
'passage a la cellule suivante comme dernière ligne
'prochaine feuille
Dim I As Integer
For I = 6 To Worksheets.Count - 1
If InStr(1, Sheets(I).Name, "SP", vbTextCompare) > 0 Then
Range("D" & Derligne).Value = Sheets(I).Range("B1").Value
With Sheets("Results")
' Récupérer la dernière ligne vide de la colonne E
DLigR = .Range("E" & Rows.Count).End(xlUp).Row + 1
.Range("E" & DLigR) = Worksheets(I).Range("O46").Value
End With
Else
Range("D" & Derligne).Value = Sheets(I).Range("B1").Value
With Sheets("Results")
' Récupérer la dernière ligne vide de la colonne E
DLigR = .Range("E" & Rows.Count).End(xlUp).Row + 1
.Range("E" & DLigR) = "-"
End With
End If
If InStr(1, Sheets(I).Name, "SNC", vbTextCompare) > 0 Then
Range("D" & Derligne).Value = Sheets(I).Range("B1").Value
With Sheets("Results")
' Récupérer la dernière ligne vide de la colonne F
DLigR = .Range("F" & Rows.Count).End(xlUp).Row + 1
.Range("F" & DLigR) = Worksheets(I).Range("O46")
End With
Else
With Sheets("Results")
' Récupérer la dernière ligne vide de la colonne F
DLigR = .Range("f" & Rows.Count).End(xlUp).Row + 1
.Range("f" & DLigR) = "-"
End With
End If
If InStr(1, Sheets(I).Name, "ANN", vbTextCompare) > 0 Then
Range("D" & Derligne).Value = Sheets(I).Range("B1").Value
With Sheets("Results")
' Récupérer la dernière ligne vide de la colonne G
DLigR = .Range("G" & Rows.Count).End(xlUp).Row + 1
.Range("G" & DLigR) = Worksheets(I).Range("O46")
End With
Else
With Sheets("Results")
' Récupérer la dernière ligne vide de la colonne G
DLigR = .Range("g" & Rows.Count).End(xlUp).Row + 1
.Range("g" & DLigR) = "-"
End With
End If
Derligne = Derligne + 1
Next I
End Sub |