Comment empiler des colonnes de gauche à droite en une seule colonne dans Excel ?
Supposons qu'il y ait plusieurs colonnes, la tâche consiste à empiler les colonnes de gauche à droite en une seule colonne comme le montre la capture d'écran ci-dessous. À part déplacer manuellement les colonnes une par une, existe-t-il des astuces pour résoudre cela dans Excel ?
Empiler des colonnes de gauche à droite en une seule colonne avec VBA
Empiler des colonnes de gauche à droite en une seule colonne avec Kutools pour Excel
Empiler des colonnes de gauche à droite en une seule colonne avec VBA
Dans Excel, il n'y a pas de fonction intégrée qui peut gérer cette tâche, mais le code VBA peut vous aider.
1. Appuyez sur Alt +F11, puis, dans la fenêtre Microsoft Visual Basic for Applications, cliquez sur Insertion > Module pour créer un nouveau module vide.
2. Copiez et collez le code ci-dessous dans le Module.
VBA : Empiler des colonnes en une seule
Sub StackColumns()
'UpdatebyExtendoffice20180814
Dim xSRg, xDRg As Range
Dim xDWS As Worksheet
Dim xIntDR, xIntDC, xI As Long
Dim xFNumR, xFNumC As Long
On Error GoTo Err1
Set xSRg = Application.InputBox("Select Columns:", "Kutools for Excel", xTxt, , , , , 8)
If xSRg Is Nothing Then
Err1:
Application.ScreenUpdating = True
Exit Sub
End If
Set xDRg = Application.InputBox("Select a cell to place result:", "Kutools for Excel", xTxt, , , , , 8)
If xDRg Is Nothing Then
Exit Sub
End If
Application.ScreenUpdating = False
Set xDWS = xDRg.Worksheet
xIntDR = xDRg.Row
xIntDC = xDRg.Column
xI = 0
For xFNumC = 1 To xSRg.Columns.Count
For xFNumR = 1 To xSRg.Rows.Count
Set xDRg = xDWS.Cells(xIntDR + xI, xIntDC)
xDRg.Value = xSRg.Cells(xFNumR, xFNumC).Value
xI = xI + 1
Next xFNumR
Next xFNumC
Application.ScreenUpdating = True
End Sub
3. Appuyez sur F5 pour exécuter le code, une boîte de dialogue apparaît pour vous permettre de sélectionner les colonnes que vous souhaitez empiler en une seule.
4. Cliquez sur OK, puis sélectionnez une cellule pour placer le résultat.
5. Cliquez sur OK pour terminer. Maintenant, les colonnes sélectionnées ont été empilées en une seule colonne.
Empiler des colonnes de gauche à droite en une seule colonne avec Kutools pour Excel
Si vous avez installé Kutools pour Excel dans Excel, vous pouvez utiliser l'utilitaire Transformer la plage pour gérer cette tâche.
Après avoir installé Kutools pour Excel, veuillez procéder comme suit :
1. Sélectionnez les colonnes que vous souhaitez empiler, puis cliquez sur Kutools > Plage > Transformer la plage.
2. Dans la Transformer la plage boîte de dialogue, cochez la case Plage vers une seule ligne case à cocher, puis cliquez sur Ok.
3. Dans la boîte de dialogue qui apparaît, sélectionnez une cellule pour placer le résultat, puis cliquez sur OK.
Maintenant, les colonnes ont été transformées en une seule ligne.
4. Sélectionnez la ligne unique, appuyez sur Ctrl + C pour la copier, puis sélectionnez une autre cellule où sera placée la colonne empilée, faites un clic droit et sélectionnez Transposer (T) dans le menu contextuel.
Maintenant, la ligne unique a été transposée en une colonne empilée.
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail
- Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !