[COLOR="Blue"]Sub[/COLOR] TraitementCodes_En_J()
[COLOR="Green"]'[/COLOR]
[COLOR="blue"]Dim[/COLOR] LastRow [COLOR="blue"]As Long[/COLOR], i [COLOR="blue"]As Long[/COLOR]
[COLOR="blue"]Dim[/COLOR] C [COLOR="blue"]As[/COLOR] Range
[COLOR="blue"]Dim[/COLOR] Codes
[COLOR="green"]'[/COLOR]
[COLOR="green"]' On détermine la dernière ligne du fichier[/COLOR]
LastRow = Range("A65536").End(xlUp).Row
[COLOR="green"] ' On dimensionne le tableau qui accueillera
' les code (NbLignes, 1 colonne)[/COLOR]
[COLOR="blue"]ReDim[/COLOR] Codes(1 [COLOR="blue"]To[/COLOR] LastRow, 1 [COLOR="blue"]To[/COLOR] 1)
[COLOR="green"] ' On met le compteur à 1[/COLOR]
i = 1
[COLOR="green"] ' puis, pour chaque cellule de la colonne A[/COLOR]
[COLOR="blue"]For Each[/COLOR] C [COLOR="blue"]In[/COLOR] Range("A1:A" & LastRow)
[COLOR="green"] ' On cherche où se trouve les premiers ":" dans la
' cellule en cours de traitement InStr(1, C, ":").
' On soustrait 2 de cette position pour obtenir le
' premier code à 2 lettres avant ces deux points.
' Ensuite, on extrait 5 caractères à partir de la
' position précédemment calculée :
' Mid(C, Position calculée, 5).
' Sur ton fichier, j'ai j'ai remarqué que les codes
' placés en J sont de la forme "NN:N" ou "NN:NN",
' voilà pourquoi j'extrais 5 caractères desquels
' j'enlève les espaces superflus : Trim(Chaîne).
' Enfin, on les place dans le tableau en "ligne"
' [B][I]i[/I][/B] colonne 1[/COLOR]
Codes(i, 1) = Trim(Mid(C, InStr(1, C, ":") - 2, 5))
[COLOR="green"] ' on incrémente i pour passer à la "ligne" suivante[/COLOR]
i = i + 1
[COLOR="green"] ' Et on passe à la prochaine cellule de la colonne A[/COLOR]
[COLOR="blue"]Next[/COLOR] C
[COLOR="green"] ' Et pour terminer, on place tous ces codes en une
' seule fois en colonne J[/COLOR]
Range("J1:J" & LastRow) = Codes
[COLOR="blue"]End Sub[/COLOR]