Macro en VBA, supprimer des caractéres
doul
-
doul -
doul -
je souhaite créer une petite macro en vba pour excel, pour faire ceci:
je récupère sous une feuille Excel dans une colonne, des lignes qui contiennes 12 caractéres "AOU 00001215". Je souhaite supprimer les 4 caractéres de gauche dans toutes les lignes pour obtenir "00001215"
Pouvez-vous m'aider
merci
je récupère sous une feuille Excel dans une colonne, des lignes qui contiennes 12 caractéres "AOU 00001215". Je souhaite supprimer les 4 caractéres de gauche dans toutes les lignes pour obtenir "00001215"
Pouvez-vous m'aider
merci
2 réponses
-
bonjour,
les numéro des colonnes de collecte et de restitution étant inconnus, il faudra adapter les constantes à ta feuille.
les 8 caractères restant sont restitués en format texte
Const col As String = "A" 'colonne de collecte Const col_r As String = "B" 'colonne de restitution Sub extraire_fin() derlig = Cells(Cells.Rows.Count, col).End(xlUp).Row ReDim tablo(derlig - 1) For cptr = 0 To derlig - 1 tablo(cptr) = Right(Cells(cptr + 1, col), 8) Next Application.ScreenUpdating = False Range(Cells(1, col_r), Cells(derlig, col_r)) = Application.Transpose(tablo) End Sub
:-x -
Bonjour,
Avec ce code, tu colles dans la colonne B, les valeurs que tu désires, issues de la colonne A.
On peut bien évidemment recopier ces valeurs dessus les anciennes valeurs, dans la colonne A
Colonnes à adapter...
Sub essai() Dim Tblo, Tmp Tblo = Range("A1:A" & [A65000].End(xlUp).Row).Value ReDim Tmp(1 To UBound(Tblo)) For i = LBound(Tblo) To UBound(Tblo) Tmp(i) = Split(Tblo(i, 1), " ")(1) Next i Columns("B:B").NumberFormat = "@" [B1].Resize(UBound(Tblo), 1).Value = Application.Transpose(Tmp) End Sub
Bonne nuit