Fusionner des lignes sur plusieurs colonnes

Sydney

XLDnaute Nouveau
Bonjour,

Comme indique dans le titre, je souhaiterais faire fusionner des lignes sur plusieurs colonnes.

Je m'explique: je voudrais, en selectionnant une plage de plusieurs lignes et plusieurs colonnes, pouvoir fusionner uniquement les lignes et laisser les colonnes separees. Or quand on selectionne une telle plage et que l'on utilise la fonction "fusionner", excel ne conserve que la premiere valeur qu'il trouve. La solution est donc de selectionner non pas toute la plage, mais les lignes que l'on veut fusionner colonne par colonne. Le probleme est que ca prend enormement de temps.

Quelqu'un connait-t-il un moyen de realiser ca rapidement en selectionnant l'ensemble de la plage? (macro?) Eventuellement, au lieu de fusionner j'avais pense utiliser une fonction du type "centrer sur plusieurs lignes", mais je ne pense pas qu'elle existe.

Pour plus de clarte, voir le fichier xls joint.

Merci d'avance pour votre aide.
 

Pièces jointes

  • test.xls
    16 KB · Affichages: 274
  • test.xls
    16 KB · Affichages: 311
  • test.xls
    16 KB · Affichages: 303
Dernière édition:

Jiheme

XLDnaute Accro
Re : Fusionner des lignes sur plusieurs colonnes

Bonjour Sydney, Le Forum

Tu peux sélectionner un groupe de celulles fusionnées, par exemple sur 4 lignes, tu fais copier, tu selectionne 4 lignes sur le nombre de colonnes désirées et colage spécial=> format.

Si cela ne convient pas je pense qu'il faudra passer par du code VBA.

A+
 

job75

XLDnaute Barbatruc
Re : Fusionner des lignes sur plusieurs colonnes

Bonjour Sydney, Jiheme, le forum,

Voici 2 macros à placer dans le code de la feuille (clic droit sur l'onglet et Visualiser le code).

La 1ère se lance par un clic droit sur la plage sélectionnée.

La 2ème, qui fusionne les cellules par colonne, est lancée par la 1ère, mais on peut si l'on préfère la lancer par un raccourci clavier.

Code:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
fusionne
Cancel = True
End Sub

Sub fusionne()
If Selection.Rows.Count = 1 Then End
Dim colon As Range
Application.DisplayAlerts = False
For Each colon In Selection.Columns
Intersect(colon, Selection).MergeCells = True
Next
Application.DisplayAlerts = True
End Sub

EDITION : si vous désirez que ces macros fonctionnent pour toutes les feuilles du classeur, placez-les dans ThisWorkbook et remplacez la 1ère ligne de la 1ère macro par :

Code:
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)

A+
 
Dernière édition:

Sydney

XLDnaute Nouveau
Re : Fusionner des lignes sur plusieurs colonnes

Bonjour Jiheme, job75,

Merci pour vos reponses.
job75, votre macro fonctionne du tonnerre ! Ca me fait penser qu'il va vraiment falloir que je me mette serieusement au VBA.
Jiheme, votre solution maison est astucieuse aussi (meme si moins efficace que la macro). C'etait bien pense tout de meme !

Merci a vous deux.
Cdlt,
 

Discussions similaires

Réponses
12
Affichages
487

Statistiques des forums

Discussions
311 720
Messages
2 081 900
Membres
101 834
dernier inscrit
Jeremy06510