Regrouper valeurs colonnes en ligne

  • Initiateur de la discussion Initiateur de la discussion pierreg
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pierreg

XLDnaute Occasionnel
Bonjour à tous,

J'espère que tout le monde n'est pas en vacances!

J'aimerai bien trouver une solution à mon problème.

J'ai des valeurs à regrouper dans des colonnes, je souhaiterais les mettre sur la même ligne.

Exemple joint:
En feuille 1 mes valeurs.
En feuille 2 mon résultat escompté (2 possibilités).

Merci d'avance.
 

Pièces jointes

Re : Regrouper valeurs colonnes en ligne

Bonjour, pierreg, le Forum,

Peut-être avec ce code :

Code:
Option Explicit
Sub Valeurs_aligner()
    Dim i As Long
    Application.ScreenUpdating = False
    For i = 1 To Range("A65536").End(xlUp).Row
        If IsNumeric(Range("A" & i)) Then Range("A" & i).Cut Destination:=Range("A" & i).Offset(, 2)
    Next
    Columns("A:C").SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
    Application.ScreenUpdating = True
End Sub

A bientôt 🙂

P. S. : Bonjour, titiborregan5 🙂
 
Dernière édition:
Re : Regrouper valeurs colonnes en ligne

Bonjour titiborregan5,

Merci bien pour ta réponse.
Après essai, malheureusement j'ai trop d'erreur. Je n'ai pas précisé que j'ai aussi des valeurs qui n'ont aucunes correspondances possibles, certains noms sont seuls et n'ont pas de numéros ou de date, ce qui complique un peu. J'ai pas mal de valeurs à traiter.

Y a t-il moyen d'avoir une formule plutôt qu'une macro?

Je pensais peut être dans un premier temps une fonction pour éliminer les lignes vides comme le fait la macro puis dans un second temps une formule permettant d'aligner les 3 valeurs sur la même ligne en prenant en compte le fait que certaines valeurs sont seules.

J'ai aussi moyen de rajouter un préfixe aux noms de façon à pouvoir mieux identifier.
Exemple:
dans "Marie-Pierre" je met devant "nom:Marie-Pierre" de cette façon peut être qu'il est plus facile de rechercher "nom:" et d'associer tout ce qu'il y a en dessous sur une ligne et ainsi de suite jusqu'au prochain nom.
 
Dernière édition:
Re : Regrouper valeurs colonnes en ligne

J'ai simplifié les choses, peut être qu'une recherche V ferait l'affaire.

Plus de titre, il faut juste chercher le mot "nom:" et y mettre en ligne tout ce qu'il y a en dessous.

Voir exemple
Résultat en feuille 2
 

Pièces jointes

Re : Regrouper valeurs colonnes en ligne

Re,
essaie avec ce code et dis-moi si ça ne marche ou pas!

Code:
Sub ligne()
With Sheets(1)
For i = 1 To .Range("a65000").End(xlUp).Row
If Left(.Cells(i, 1).Value, 4) = "nom:" Then
Sheets(3).Range("a65000").End(xlUp).Offset(1, 0).Value = .Cells(i, 1).Value
Sheets(3).Range("a65000").End(xlUp).Offset(0, 1).Value = .Cells(i, 1).Offset(1, 1).Value
Sheets(3).Range("a65000").End(xlUp).Offset(0, 2).Value = .Cells(i, 1).Offset(2, 0).Value
End If
Next

End With

End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
12
Affichages
406
Réponses
15
Affichages
221
Retour