XL 2010 Modifier avec macro la présentation d'un fichier

mam721

XLDnaute Junior
Bonjour à tous,

Je souhaiterais modifier la présentation d'un fichier Excel pour le rendre plus lisible et surtout filtrable.

Le fichier se présente de cette manière :


Première étape, c'est supprimer les lignes vides. Que je fais rapidement en filtrant et sélectionnant les cases vides.

Deuxième étape, c'est de remplir la colonne A de façon a ce que la valeur remplisse les cases jusqu’à la prochaine case remplie


3eme étape, c'est de faire une concaténation de la colonne A avec la colonne B et de coller les valeurs dans la colonne B. Ce qui donne pour la première ligne:

B0F (vide) Moteur​
et devient :
B0F B0F Moteur​

Pour les lignes suivantes :
B0F LE EB2FA​
qui devient :
B0F B0FLE EB2FA​


Il y a un point sur lequel je souhaiterais réparer, c'est lorsqu'il s'agit d'un chiffre seul. exemple

dans ce cas la, il faut rajouter un 0 avant le chiffre.

L'objectif final, c'est d'arriver a ce cas de figure :


Pour y parvenir, je dois faire une macro, car j'ai plusieurs fichiers de ce type a faire.

Malheureusement je ne suis pas très doué.
J'ai trouvé une partie de code qui pourrait faire office mais il ne prends pas en compte la situation de l'ajout du 0 dans la colonne B.

VB:
Attribute VB_Name = "Module_completer"

Sub Remplir_vide()
Dim nb_ligne, nb_colonne As Integer
Dim dep_ligne, dep_colonne As Integer
Dim lin, col As Integer

If Selection.Rows.Count <= 1 And Selection.Columns.Count <= 1 Then
    MsgBox ("Ce traitement nécessite de sélectionner la zone à traiter")
    Exit Sub
End If

'initialisation
nb_ligne = Selection.Rows.Count
nb_colonne = Selection.Columns.Count
dep_ligne = Selection.Row
dep_colonne = Selection.Column

lin = dep_ligne
col = dep_colonne

While lin < (nb_ligne + dep_ligne)
    While col < (nb_colonne + dep_colonne)
        If Cells(lin, col) = "" Then Cells(lin, col) = Cells(lin - 1, col)
        col = col + 1
    Wend
    lin = lin + 1
    col = dep_colonne
Wend

End Sub





La colonne A est normalisée. Elle est toujours avec 3 caractères.
La colonne B a 3 choix possibles :
Cellule vide : Alors reprendre la chaîne de caractère de la colonne A et la coller dans la colonne B
Cellule avec 1 caractère: Il s'agit de la situation ou il manque le 0 qu'il faut rajouter et ensuite concaténer avec la chaîne de caractère de la colonne A
cellule avec 2 caractère : Il faut concaténer avec la chaîne de caractère de la colonne A​
La colonne C contient une chaîne de caractère.



Pouvez vous m'aider sur cette présentation des données ?

Je vous remercie.
 

Discussions similaires

Statistiques des forums

Discussions
312 842
Messages
2 092 732
Membres
105 519
dernier inscrit
faivre-roussel.ivan@orang