Petit problème de macro

Hello Forum,

Voilà j'essais de supprimer les 12 premier caractères de la colonne B de chaque ligne en prenant en compte le fait qu'il peu y avoir des lignes vide, mais cela ne fonctionne pas très bien, il s'arrête à la première du bas et ne poursuit pas la macro doit y avoir un truc que j'ai mal fait.

Voici ce code

Sub Macro1()

Dim lig As Long
Dim chaine As Variant
Dim DL As Long 

Set O = Worksheets("Feuil1") 
DL = O.Range("B" & Application.Rows.Count).End(xlUp).Row
While Worksheets(1).Range("B" & DL).Value <> ""
   chaine = Worksheets(1).Range("B" & DL).Value
   Worksheets(1).Range("B" & DL).Value = Mid(chaine, 12, Len(chaine))
DL = DL + 1
Wend

End Sub

Merci de vôtre aide

Bonjour,

Un exemple.

Cdlt.

Public Sub DEMO()
Dim ws As Worksheet
Dim n As Long, I As Long
Const POS As Byte = 12
    Application.ScreenUpdating = False
    Set ws = Worksheets("Feuil1")
    With ws
        n = .Cells(.Rows.Count, "B").End(xlUp).Row
        For I = 1 To n
            If Not IsEmpty(.Cells(I, "B")) Then .Cells(I, "B").Value = _
               Mid(.Cells(I, "B").Text, POS, Len(.Cells(I, "B")))
        Next I
    End With
    Set ws = Nothing
End Sub

Bonsoir,

Sub Macro1()
    Dim c As Range, plg As Range, ch As String
    With Worksheets("Feuil1")
        Set plg = .Range("B1:B" & .Range("B" & .Rows.Count).End(xlUp).Row)
    End With
    For Each c In plg
        ch = Left(c.Value, 12)
        c.Value = Replace(c, ch, "")
    Next c
End Sub

Cordialement.

Bon bah merci bcp MFerrand et Jean-Eric les deux codes fonctionnent parfaitement bien Merci de vôtre aide

Rechercher des sujets similaires à "petit probleme macro"