Salut tout le monde,
voici mon VBA:
Sub Modif_format()
Dim i As Integer
'Figeage de l'ecran durant l'execution de la macro
Application.ScreenUpdating = False
' boucle sur chaque ligne de la colonne E en commancant par la la ligne 19 jusqu'a la 3000
For i = Range("e19").Row To 3000 Step 1
' Si le contenue de la case dans la colonne E est égal a celui de la case du dessous
If (Cells(i, 5)) = (Cells(i + 1, 5)) Then
'(Et) Si le contenu de la case de la meme ligne mais de la colonne C
'est égal au contenu de la ligne du dessus de la colonne C
If (Cells(i, 3)) = (Cells(i + 1, 3)) Then
'on concatene les valeur de la colonne Bvaec une virgule entre les deux chaines
'de caractères
Cells(i, 2) = Cells(i, 2) & "," & Cells(i + 1, 2)
'on supprime la ligne du dessous
Rows(i + 1).Delete
'Sinon (ici mon problème)
Else
End If
End If
Next i
Range("A20").Select
En fait je veux comparais le contenue de 2 case superposées en colonne C et en colonne E :
- Et si le contenu et identique pour les deux cas, prendre le contenu de la case colonne B de la ligne du dessous et la collée dans la meme case avec une "virgule" entre les 2 puis effacée la ligne du dessous et recommencer avec la meme ligne et la nouvelle ligne du dessous
- Et si le contenu n'est pas identique, passer à la ligne du dessous
Mais la je bloque, je penses que je suis peut etre mal parti
Merci d'avance
voici mon VBA:
Sub Modif_format()
Dim i As Integer
'Figeage de l'ecran durant l'execution de la macro
Application.ScreenUpdating = False
' boucle sur chaque ligne de la colonne E en commancant par la la ligne 19 jusqu'a la 3000
For i = Range("e19").Row To 3000 Step 1
' Si le contenue de la case dans la colonne E est égal a celui de la case du dessous
If (Cells(i, 5)) = (Cells(i + 1, 5)) Then
'(Et) Si le contenu de la case de la meme ligne mais de la colonne C
'est égal au contenu de la ligne du dessus de la colonne C
If (Cells(i, 3)) = (Cells(i + 1, 3)) Then
'on concatene les valeur de la colonne Bvaec une virgule entre les deux chaines
'de caractères
Cells(i, 2) = Cells(i, 2) & "," & Cells(i + 1, 2)
'on supprime la ligne du dessous
Rows(i + 1).Delete
'Sinon (ici mon problème)
Else
End If
End If
Next i
Range("A20").Select
En fait je veux comparais le contenue de 2 case superposées en colonne C et en colonne E :
- Et si le contenu et identique pour les deux cas, prendre le contenu de la case colonne B de la ligne du dessous et la collée dans la meme case avec une "virgule" entre les 2 puis effacée la ligne du dessous et recommencer avec la meme ligne et la nouvelle ligne du dessous
- Et si le contenu n'est pas identique, passer à la ligne du dessous
Mais la je bloque, je penses que je suis peut etre mal parti
Merci d'avance