Aligner réponses identiques dans même colonne

Bonjour,

J'ai du mal à définir mon problème et donc à y trouver une réponse en cherchant.

Je souhaiterais aligner des réponses identiques sur plusieurs lignes dans une même colonne. Peut être qu'avec une image ce sera plus claire :

capture

J'aimerais que dans chaque colonne n'apparaisse qu'un seul type de réponse (ex : une colonne avec uniquement theoretical or scientific content, models, etc.). Là, tout est mélangé ...

D'avance, grand merci à la personne qui prendra le temps de me donner la marche à suivre.

Je viens d'essayer la fonction "tri" mais ce n'est pas tout à fait ce que je veux ...

Bonjour,

Envoies plutôt un fichier test avec les infos avant et un exemple de ce que tu veux obtenir pour que ce soit plus clair.

A la lecture "aligner des lignes dans une même colonne" je ne pense pas qu'un seul membre du forum puisse traduire

En fait, j'aimerais qu'un seul type de réponse apparaisse dans chaque colonne. Je joins un fichier "après" le traitement "à la main" que je viens de faire mais j'aimerais quand même pouvoir le faire pour d'autres tableurs...

Merci d'avance !

10apres.xlsx (10.04 Ko)

Ce fichier c'est le résultat à obtenir ?

Tu n"as pas laissé l'onglet avant traitement.

Voilà le fichier avant après

8avant-apres.xlsx (13.17 Ko)

Bonjour,

J'ai retrouvé une macro que j'avais sous la main et dont l'objectif était assez proche: il s'agissait de séparer des réponses initialement présentes dans une seule colonne et séparées par une virgule.

La macro crée autant de colonnes que de réponses différentes, et place toutes les réponses identiques dans une même colonne.

Tu peux donc l'utiliser telle quelle si tu concatènes d'abord tes réponses dans une unique colonne avec un séparateur ",", ou elle peut servir de base pour adapter quelque chose à ton cas.

Le code :

Sub SéparerRéponses()

On Error Resume Next

Dim LigMax As Integer, Lig As Integer, ColD As Integer, ColF As Integer, Col As Integer, ColRep As Range, Separer() As String, i As Byte

'Sélection de la plage à transformer
Set ColRep = Application.InputBox("Selectionner la plage de réponses à traiter (1 colonne à la fois)", Type:=8)
'Désactive l'affichage le temps d'exécuter la macro
Application.ScreenUpdating = False
'Insertion d'une colonne à droite
Columns(ColRep.Column + 1).Insert Shift:=xlToRight
'Indices de la premiere et de la dernière colonne contenant les réponses traitées
ColD = ColRep.Column + 1
ColF = ColD
'Parcourir les cellules
For Each Cell In ColRep
    'Sépare les réponses en fonction de la virgule
    Separer = Split(Cell, ", ")
    For i = LBound(Separer) To UBound(Separer)
        For Col = ColD To ColF
            'Ajout de la première modalité de réponse
            If IsEmpty(Cells(1, Col)) Then Cells(1, Col) = Separer(i)
            'Recherche de correspondance avec une modalité existante
            If Separer(i) = Cells(1, Col) Then
                Cells(Cell.Row, Col) = Separer(i)
                Exit For
            End If
            'Ajout d'une colonne si nouvelle modalité
            If Col = ColF Then
                ColF = ColF + 1
                Columns(Col + 1).Insert Shift:=xlToRight
                Cells(1, Col + 1) = Separer(i)
                Cells(Cell.Row, Col + 1) = Separer(i)
            End If
        Next Col
    Next i
Next

End Sub

Merci beaucoup,

C'est du chinois mais je pense pouvoir m'en sortir avec... je vais voir ce que je peux faire, d'autant que les réponses étaient initialement dans une même colonne (je les avais déjà converties avec le séparateur ",").

Une autre méthode un peut plus manuelle

1) ajout d'une colonne pour trouver le nombre de valeur de chaque ligne.

2) trier le tableau en fonction de la colonne ajoutée.

3) il ne reste plus qu'à supprimer les lignes qui se suivent avec les valeur à zéro.

J'aurais peut-être dû préciser que j'étais novice en matière d'excel. Je ne comprends pas la marche à suivre... mais je vais m'en sortir, même manuellement s'il le faut ... ça prendra juste un peu plus de temps

Rechercher des sujets similaires à "aligner reponses identiques meme colonne"