XL 2013 Modification légère (?) de macro de fusion préexistante [résolu]

Theobaldinho

XLDnaute Nouveau
Bonjour,

j'ai besoin d'un petit peu d'aide : pour mettre en forme et rendre plus agréable un fichier qui ne sera pas utilisé par moi, j'ai cherché et trouvé une macro qui me permet de fusionner des cellules ayant les mêmes valeurs dans des colonnes adjacentes.
Ceci a pour but de rendre plus lisible un graphique.

La solution que j'ai trouvée est la suivante :

Sub FusionIdentique()

Dim cel As Range
Application.DisplayAlerts = False
For Each cel In Selection
If cel.Column > 1 Then
If Not Intersect(cel.Offset(, -1), Selection) Is Nothing Then
If cel = cel.Offset(, -1).MergeArea.Cells(1, 1) Then _
Range(cel, cel.Offset(, -1).MergeArea).Merge
End If
End If
Next


End Sub

Je l'ai placée dans l'objet Feuil4.
Elle fonctionne mais nécessite de sélectionner les cellules où la macro doit s'appliquer.

Je souhaiterais, dans la mesure du possible :

1) que la zone soit déterminée dans la macro (par exemple C5:BA5 de la feuille 4)
2) qu'elle puisse aussi être appliquée à la feuille 5

Donc, si vous pouviez m'aider, ce serait top.
(Et déjà, merci d'avoir pris le temps de me lire).
 

job75

XLDnaute Barbatruc
Bonjour Theobaldinho, bienvenue sur XLD,

Ce n'est pas très clair mais a priori pour fusionner sur C5:BA5 il faut étudier D5:BA5 :
VB:
Sub FusionIdentique()
Dim cel As Range
Application.DisplayAlerts = False
For Each cel In [D5:BA5]
    If cel <> "" And cel = cel(1, 0).MergeArea(1) Then Range(cel, cel(1, 0).MergeArea).Merge
Next
End Sub
La macro traite la feuille active quelle qu'elle soit.

A+
 

Discussions similaires


Haut Bas