Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment empiler rapidement plusieurs colonnes dans une colonne dans Excel?

dans Excel, la fonction Texte en colonnes peut diviser une cellule en plusieurs colonnes en fonction du délimiteur, mais s'il y a des moyens d'empiler plusieurs colonnes en une seule colonne comme illustré ci-dessous? Dans cet article, je vais introduire quelques astuces pour résoudre cette tâche rapidement.
doc empile des colonnes à un 1

Empilez plusieurs colonnes en une avec une formule

Empilez plusieurs colonnes en une avec VBA

Empilez plusieurs colonnes en une avec Transform Range bonne idée3


Empilez plusieurs colonnes en une avec une formule


1. Sélectionnez la plage que vous voulez empiler et accédez au Zone Nom pour donner un nom à cette plage et appuyez sur Entrer clé. Voir la capture d'écran:
doc empile des colonnes à un 2

2. Ensuite, sélectionnez une cellule vide que vous souhaitez placer les résultats, entrez cette formule =INDEX(MyData,1+INT((ROW(A1)-1)/COLUMNS(MyData)),MOD(ROW(A1)-1+COLUMNS(MyData),COLUMNS(MyData))+1), presse Enter et faites glisser la poignée de remplissage vers le bas jusqu'à ce qu'une erreur s'affiche. Voir la capture d'écran:
doc empile des colonnes à un 3

Dans la formule, MyData est le nom de plage que vous avez spécifié à l'étape 1.

Empilez plusieurs colonnes en une avec VBA

Voici un code VBA qui peut vous aider aussi.

1. presse Alt + F11 clés à afficher Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Module, coller sous le code à Module.

VBA: empiler les colonnes à un

Sub ConvertRangeToColumn()
'UpdatebyExtendoffice
Dim Range1 As Range, Range2 As Range, Rng As Range
Dim rowIndex As Integer
xTitleId = "KutoolsforExcel"
Set Range1 = Application.Selection
Set Range1 = Application.InputBox("Source Ranges:", xTitleId, Range1.Address, Type:=8)
Set Range2 = Application.InputBox("Convert to (single cell):", xTitleId, Type:=8)
rowIndex = 0
Application.ScreenUpdating = False
For Each Rng In Range1.Rows
    Rng.Copy
    Range2.Offset(rowIndex, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
    rowIndex = rowIndex + Rng.Columns.Count
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

doc empile des colonnes à un 4

3. presse F5 clé pour exécuter le code, une boîte de dialogue apparaît pour sélectionner les données source, puis cliquez sur OK, pour sélectionner une cellule pour placer les résultats. Voir la capture d'écran:
doc empile des colonnes à un 5

4. Cliquez OK. Maintenant, les colonnes ont été empilées dans une colonne.
doc empile des colonnes à un 6


Empilez plusieurs colonnes en une avec Transform Range

Pour appliquer Kutools for Excel's Chaîne de transformation L'utilité est aussi peut vous aider à résoudre rapidement ce problème.

Kutools for Excel, avec plus de 300 fonctions pratiques, rend votre travail plus facile.

Après l'installation de Kutools pour Excel, s'il vous plaît faire comme ci-dessous:(Téléchargement gratuit Kutools pour Excel maintenant!)

Après l'installation de Kutools pour Excel, s'il vous plaît faire comme ci-dessous :(Téléchargement gratuit Kutools for Excel maintenant!)

1. Sélectionnez les données de colonnes que vous utilisez et cliquez sur Kutools > étendue > Chaîne de transformation. Voir la capture d'écran:
doc empile des colonnes à un 8

2. dans le Chaîne de transformation dialogue, vérifier Plage à une seule colonne option, et cliquez Ok, puis sélectionnez une cellule pour placer les résultats. Voir la capture d'écran:
doc empile des colonnes à un 9

3. Cliquez OK. Maintenant, les colonnes ont été empilées dans une seule colonne.
doc empile des colonnes à un 1



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Tom · 1 months ago
    I am attempting to do this over a very large table (100s of columns and rows that are all linked to formulas. My excel will keep loading and then ultimately go to not responding. Is there a way to get past this? Thanks
  • To post as a guest, your comment is unpublished.
    Chris Blackburn · 2 months ago
    Hi, I'm looking to go a step further with this. I've used Stack Multiple Columns Into One With VBA, code and this works. I've used Tables as the source with this code and I get the list. Is there a way to automate running the Macro? So that when I add a new entry into the table the Macro automatically runs and keeps the resulting list up to date?
    • To post as a guest, your comment is unpublished.
      Sunny · 1 months ago
      Hi, Chris Blackburn, sorry I am affraid I cannot find a code can automatically run to update the result, maybe someone else can.
  • To post as a guest, your comment is unpublished.
    tom · 7 months ago
    Hi, is there a way to make the formula ignore any blank cells your data may contain?


    =INDEX(MyData,1+INT((ROW(A1)-1)/COLUMNS(MyData)),MOD(ROW(A1)-1+COLUMNS(MyData),COLUMNS(MyData))+1),


    I am using a helper sheet to create a contiguous list for a data validation drop down list. Thanks in advance.
    • To post as a guest, your comment is unpublished.
      Sunny · 6 months ago
      Sorry, I am not good at formula, maybe you can try to use Kutools for Excel's Select Nonblank cells utility to select the unempty cells firstly, and copy and paste them to another location, then use above methods.
  • To post as a guest, your comment is unpublished.
    Gokce · 7 months ago
    I have data which ends at the same row but multiple columns in which I want them to be stacked in a sequence where B column data will go under A column data where the data ends for A column and C column data to go under A column data where the data from B column ends and so on. This way I will have data from multiple columns to fit into one column. How can I do that?
  • To post as a guest, your comment is unpublished.
    badusha · 11 months ago
    Hello , is there any to convert above data to following form ??
    1
    A
    Lilly
    2
    B
    Judy
    ...