Sub generation()
Application.ScreenUpdating = False
' Mise en forme Génération-SOSA-PlusPlus
With Selection 'vérifier la sélection avant ???
.MergeCells = False
End With
With Sheets("Onglet ORIGINAL")
'compter le nombre de lignes
nbligne = .Range("A" & .Rows.Count).End(xlUp).Row
.Columns("B:C").Insert
.Range("B1") = "Génération"
.Range("C1") = "++"
For i = 2 To nbligne
If InStr(1, ThisWorkbook.ActiveSheet.Cells(i, 1), "G") > 0 Then 'le G peut il vraiment apparaitre n'importe où dans la chaine, ou c'est toujours le premier caractère ?
numgen = CInt(WorksheetFunction.Substitute(ThisWorkbook.ActiveSheet.Cells(i, 1), "G", "")) 'on supprime le caractère G et on transforme le reste de la chaine en nombre
End If
.Range("B" & i) = numgen
.Range("C" & i) = "Non"
If InStr(1, ThisWorkbook.ActiveSheet.Cells(i, 1), "++") > 0 Then
.Range("C" & i) = "Oui"
End If
Next i
For i = 2 To nbligne
If InStr(1, ThisWorkbook.ActiveSheet.Cells(i, 1), "G") > 0 Then 'le G peut il vraiment apparaitre n'importe où dans la chaine, ou c'est toujours le premier caractère ?
.Rows(i).Delete Shift:=xlUp
End If
Next
.Range("a1").Select
End With
Application.ScreenUpdating = True
End Sub