Creation de formule ou macro

Bonjour, je cherche une formule ou macro qui me permet de traiter des données.

Je cherche une formule ou macro qui puisse passer sur chaque cellule et si elle trouve du texte renvoyé le texte de la cellule + la(les) suite(s) de chiffre en dessous de ce texte.
Dans le fichier joint, je cherche à obtenir une liste type “Capot201.00.01” "Capot201.00.02
“Portière100.20.12” , …
extrait fichier.xlsx (8,2 Ko)

Merci pour vos réponses

Amicalement,

Romain

Tu as la fonction JOINDRE.TEXTE selon ta version d’excel qu’on ne connait pas.
Pour ton fichier, ce serait bien que tu y ajoute la forme de résultat attendu, fais un exemple complet on ne sait pas si tu veux joindre chaque ligne, colonne, le tout ?? Nous pourrons mieux comprendre.

Merci de répondre à ma question.
voici le fichier avec le résultat attendu.

extrait fichier.xlsx (8,8 Ko)

Le résultat peut être sur une autre feuille , à la place des cellules ,…

En attente de votre retour.

Amicalement
Romain

Hello,
Ci dessous le code, suivre les commentaires pour la logique.

Option Explicit
Sub JoindreTexte()

'Variables
Dim StrTXT As String
Dim DrrnCell As Range, Plg As Range, cln As Range, cel As Range

Set DrrnCell = Range("A1").SpecialCells(xlLastCell) 'identification de la derniere cellule utilisée
Set Plg = Range(Cells(1, 1), DrrnCell) 'Identification de la plage a traiter
For Each cln In Plg.Columns 'Boucle sur chaque colonne
    For Each cel In cln.Cells 'Pour chaque cellule de la colonne
        Select Case cel 'Verifie si cellule contient un mot clef
            Case "Capot", "Aile", "Volant", "Coffre", "Tableau de bord", "Siège", "Portière"
            cel = cel & Cells(cel.Row + 1, cel.Column) 'Si oui concatener avec le contenu suivant
            Cells(cel.Row + 1, cel.Column) = ""   'Puis vider la cellule suivante
        End Select
    Next 'Ainsi de suite pour les prochaine cellule
 
 If cln.Cells.Count <> cln.SpecialCells(xlCellTypeBlanks).Cells.Count Then cln.SpecialCells(xlCellTypeBlanks).Delete  'Suprimer les cellules vides , si pas toutes vides (colonnes B, D ,..)
Next

 Rows("2:2").Insert  'Inserer la ligne vide 2 au dessus

End Sub

Fichier : extrait macro.xlsm (21,1 Ko)

2 « J'aime »

Bonjour,

Bonjour WDS :wink:

J’espère que tu ne m’en voudra pas d’avoir légèrement amélioré ta macro, afin de prendre en compte les valeurs rassemblant plusieurs référence sur la même case

A voirextrait macro.xlsm (20,3 Ko)

2 « J'aime »

Super Mimi,
Heureusement que tu es là :hugs:, je passe en coup de vent :fire_engine:
Là Chopin c’est la totale, la macro fait mm le café :drooling_face: