Bonjour,
ses deux colonnes sont un extrait d'un gros tableaux et sont en réalité dans les colonnes AG et AH
Dans ce cas, il serait mieux d'utiliser un tableau intermédiaire car beaucoup plus rapide.
Attantion, dans ton fichier les cellules de la colonne B qui sont vides ne le sont en fait pas, elles contiennent un espace. Donc, pour le test tu supprime cet espace parasite dans la première cellule, tu tire vers le bas pour les supprimer partout et tu teste le code ci-dessous :
Sub Test()
Dim Tbl()
Dim Plage As Range
Dim I As Long
'de A2 à B... en fonction des cellules en A
With ActiveSheet
Set Plage = .Range(.Cells(2, 1), .Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, 2))
'pour AG:AH...
'Set Plage = .Range(.Cells(2, 33), .Cells(.Cells(.Rows.Count, 33).End(xlUp).Row, 34))
End With
Tbl = Plage
For I = 1 To UBound(Tbl, 1)
If Tbl(I, 2) <> "" Then Tbl(I, 1) = Left(Tbl(I, 2), 6)
Next I
Plage.Value = Tbl
End Sub
Hervé.