Copier cellules si elles ont le même contenu

Bonjour à toutes à tous,

J'ai une demande assez particulière. En effet, j'ai des lignes dans la colonne A comportant du texte. J'aimerais créer un code me permettant de dire "si tu détectes une ligne qui contient le même texte alors tu ne copie pas". Vous comprendrez mieux en regardant dans mon fichier exemple. Dans la colonne A, c'est l'avant et dans la colonne C, c'est l'objectif, soit l'après.

J'ai déja ecrit cela :

Private Sub CommandButton1_Click()

Dim dLig As Long
Dim Lig As Long

Application.ScreenUpdating = False

dLig = Range("A" & Rows.Count).End(xlUp).Row

For Lig = 2 To dLig

If Range("A", Lig).Value <> Range("A", Lig + 1).Value Then

Range("C", Lig).Value = Range("A", Lig + 1).Value

End If

Next Lig

End Sub

Merci d'avance,

Bien cordialement,

4copier-ligne.xlsm (18.82 Ko)

Bonjour,

Je dirais un truc du genre (même s'il doit y avoir plus propre).

Attention, tu avais mixé plusieurs structures.

La cellule A2 est soit :
range("A" & lig)
cells(lig, "A") ou cells(lig, 1)

Tu avais mis range("A", lig)

Private Sub CommandButton1_Click()

Dim dLig As Long
Dim Lig As Long

Application.ScreenUpdating = False

dLig = Range("A" & Rows.Count).End(xlUp).Row

For Lig = 2 To dLig

If Range("A" & Lig).Value <> Range("A" & Lig + 1).Value Then

Range("C1").Offset(WorksheetFunction.CountA(Range("C:C"), 0)).Value = Range("A" & Lig).Value

End If

Next Lig

End Sub

Ah je me doutais bien que c'était une étourdie mais je ne pensais pas que c'était a ce point ridicule. Je ferais plus attention la prochaine fois .

Range("C1").Offset(WorksheetFunction.CountA(Range("C:C"), 0)).Value = Range("A" & Lig).Value

Je n'avais pas pensé à "Offset" non plus.

Merci !

Bien cordialement,

Rechercher des sujets similaires à "copier ont meme contenu"