OVH Cloud OVH Cloud

Comparaison deux colonnes excel

3 réponses
Avatar
domagge
Bonjour,

je voudrai savoir s'il y a la possibilité de comparer deux colonnes Excel, et de supprimer les lignes qui ont les 5 premiers caractères de la colonne A sont identiques aux 5 premiers caractère de la colonne B.

Mes remerciements d'avance pour votre aide.

Salutations

3 réponses

Avatar
Jacquouille
Bonjour
-----------
Sub effacrer_lignes_cinq_caractères()
derl = [A65536].End(3).Row
For n = derl To 2 Step -1
LA = Left(Range("A" & n), 5)
LB = Left(Range("B" & n), 5)
If LA = LB Then
Rows(n).EntireRow.Delete
End If
Next
End Sub
-----------
A adapter si plus de 65536 lignes ou s'il faut laisser plusieurs lignes de
titres (To 2 , 3 ou ....)

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"domagge" a écrit dans le message de groupe de discussion :


Bonjour,

je voudrai savoir s'il y a la possibilité de comparer deux colonnes Excel,
et de
supprimer les lignes qui ont les 5 premiers caractères de la colonne A sont
identiques aux 5 premiers caractère de la colonne B.

Mes remerciements d'avance pour votre aide.

Salutations
Avatar
MichD
Bonjour,

A ) La macro suppose que la ligne 1 est réservée aux étiquettes de colonnes
B ) Tu dois adapter le nom de la feuille "Feuil1" dans la procédure, le cas
échéant.
C ) La macro fait disparaître toutes les lignes sont les 5 premières lettres
de chaque
cellule en colonne A se retrouvent aussi comme les 5 premières lettres
en colonne B.


'-------------------------------------------------------------
Sub test()
Dim Rg As Range, Rg1 As Range, Elt As Variant
Dim Tblo As Variant, X As String

With Worksheets("Feuil1") 'Nom Feuille à adapter
Set Rg = .Range("A2:A" & .Range("A65536").End(xlUp).Row)
Tblo = Rg.Value
Set Rg1 = .Range("B1:B" & .Range("B65536").End(xlUp).Row)
End With

Application.EnableEvents = False
Application.ScreenUpdating = False

For Each Elt In Tblo
If Len(Elt) >= 5 Then
X = Left(Elt, 5)
With Rg1
.AutoFilter Field:=1, Criteria1:=X & "*"
If Application.Count(Range("_FilterDatabase"). _
SpecialCells(xlCellTypeVisible)) - 1 > 0 Then
With .Offset(1).Resize(.Rows.Count - 1). _
SpecialCells(xlCellTypeVisible).EntireRow.Delete
End With
End If
End With
End If
Next
Rg.AutoFilter
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
'-------------------------------------------------------------




MichD
---------------------------------------------------------------
"domagge" a écrit dans le message de groupe de discussion :


Bonjour,

je voudrai savoir s'il y a la possibilité de comparer deux colonnes Excel,
et de
supprimer les lignes qui ont les 5 premiers caractères de la colonne A sont
identiques aux 5 premiers caractère de la colonne B.

Mes remerciements d'avance pour votre aide.

Salutations
Avatar
domagge
Le lundi 04 Novembre 2013 à 15:36 par domagge :
Bonjour,

je voudrai savoir s'il y a la possibilité de comparer deux colonnes
Excel, et de supprimer les lignes qui ont les 5 premiers caractères de
la colonne A sont identiques aux 5 premiers caractère de la colonne B.

Mes remerciements d'avance pour votre aide.

Salutations


tous mes remerciements cher amis