9 votes

Fusionner des colonnes dans Excel avec le séparateur " ;".

Voici mes données brutes dans Excel, dans différentes lignes et cellules :

A   B   C   D   E   F
1   2   3   4   5   6
2   3   4   5   6   7
3   4   5   6   7   8

J'aimerais convertir toutes les données dans ce format contenant une colonne et plusieurs lignes :

A;B;C;D;E;F
1;2;3;4;5
2;3;4;5;6
3;4;5;6;7

Comme j'ai un grand volume de données à traiter, j'ai vraiment besoin d'un moyen pratique de convertir les données.

6voto

Antti Huima Points 15465

Vous pouvez utiliser cette formule pour fusionner une ligne avec une seule colonne :

= A1 & ";" & B1 & ";" & C1

Copiez ensuite cette formule dans toutes les lignes et utilisez la colonne que vous avez créée à l'endroit voulu.

5voto

Raystafarian Points 21292

Vous pouvez utiliser le concaténer fonction =concatenate(A1,";",B1,";",C1 ... vous le faites ensuite glisser sur toute la hauteur de vos données. Une fois que vous avez fait cela, vous copy y paste special - values pour ne conserver que les valeurs concaténées. Vous pouvez ensuite supprimer tout ce qui n'est pas la colonne collée et enregistrer sous .csv

3voto

Ankit Hinsu Points 31

Dans Excel, il existe une fonction appelée TEXTJOIN . Il joint des textes provenant de plusieurs colonnes en utilisant un délimiteur fourni par l'utilisateur.

Il nécessite trois paramètres :

  1. delimiter : le délimiteur à utiliser. Dans votre cas, il s'agit de " ;"
  2. ignorer les cellules vides : true(ignore les cellules vides) ou false(n'ignore pas)
  3. texte : vous pouvez indiquer un intervalle, par exemple A1:A6 dans votre cas.

    =TEXTJOIN(";",FALSE,A1:A6)

Vous pouvez ensuite faire glisser la formule pour la copier dans plusieurs lignes, puis la copier et la coller en tant que valeurs.

J'espère que cela vous aidera. BTW J'utilise Excel 2016, je ne sais pas si cette fonction est disponible dans les versions plus anciennes.

Santé.

2voto

LonelyKnight Points 51

Vieille question, mais au cas où d'autres tomberaient dessus, voici une solution plus facile à mettre en œuvre avec plus de données.

La fonction concaténer est en effet la clé, mais si vous avez affaire à un grand nombre de données, sélectionner chaque cellule peut s'avérer fastidieux.


Reprenons donc cet exemple, un tableau de A1 a F4 .

Dans une cellule à droite, insérer =A1 disons G1 pour cet exemple (l'utilisation de cellules à côté de vos données vous permet de double-cliquer sur le coin inférieur droit de la cellule et de les remplir automatiquement jusqu'à la longueur de la colonne adjacente remplie, ou vous pouvez placer le tout à l'intérieur d'un tableau et les cellules se remplissent automatiquement d'elles-mêmes)

Ensuite, dans H1 insérer =concatenate(G1,";",B1)

Faites glisser cette formule sur le même nombre de colonnes que vos données et elle concaténera progressivement toutes les données.

La toute dernière colonne contiendra la sortie souhaitée, c'est-à-dire la colonne L dans ce cas, les cellules L1:L4 .

Faites ce que vous voulez de ces valeurs.


Vous pouvez également l'utiliser pour concaténer une colonne entière. Ou pour obtenir une concaténation conditionnelle (il suffit d'ajouter un "if" dans chaque cellule pour décider de la concaténation ou non).

Après coup, si vous ne souhaitez effectuer cette opération qu'une seule fois, il est beaucoup plus facile de copier le tableau dans Word et de le convertir en texte à l'aide de la fonction ; comme séparateur

1voto

Iszi Points 13065

S'il n'y a pas d'espaces ou de virgules dans les cellules, vous pouvez convertir en CSV puis utiliser un éditeur de texte pour trouver/remplacer les virgules par des points-virgules, puis recharger dans Excel.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X