Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Fusion automatique cellule en VBA

  • Initiateur de la discussion Initiateur de la discussion Tensfoc
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

Tensfoc

Guest
Je suis (toujours) débutant en VBA.
J'ai une base de données comportant X lignes et Y colonnes

Dans une de mes colonnes (par exemple la colonne B) j'ai de temps en temps des données qui se répètent sur deux à 10 lignes (genre plusieurs commandes pour un même client).

Je voudrais savoir si il ya une possibilité de demander à l'aide d'une macro VBA d'automatiser la fusion des cellules identiques 😕. Cette fusion ne doit s'effectuer que sur la colonne concernée.

Merci pour vos propositions.
 
Dernière modification par un modérateur:
Re : Fusion automatique cellule en VBA

Re,

En fait, il fallait diminuer de 1 les bornes supérieures des boucles For :

Code:
Sub FusionCellules()
Dim i As Long, j As Long, h As Long, k As Long
Application.DisplayAlerts = False
For i = 1 To Range("B65536").End(xlUp).Row [COLOR="Red"]- 1[/COLOR] 'étude colonne B
  j = i + 1
  While Cells(j, 2) = Cells(i, 2)
    Range(Cells(i, 2), Cells(j, 2)).MergeCells = True
    j = j + 1
  Wend
  For h = i To j - [COLOR="Red"]2[/COLOR] 'étude colonne E
    k = h + 1
    While Cells(k, 5) = Cells(h, 5)
      Range(Cells(h, 5), Cells(k, 5)).MergeCells = True
      k = k + 1
    Wend
    h = k - 1
  Next h
  i = j - 1
Next i
Application.DisplayAlerts = True
End Sub

On s'embrouille facilement avec les indices, c'est pour ça qu'il faut tester...

A+
 
Re : Fusion automatique cellule en VBA

On s'embrouille facilement avec les indices, c'est pour ça qu'il faut tester...

A+

En effet !😀
J'ai fait le test on approche de la solution mais je pense qu'il y a conflit entre les deux fusions ce qui amène des erreurs type décalage d'une ligne.
Je te mets le fichier source pour que tu vois le problème.
 

Pièces jointes

Dernière modification par un modérateur:
Re : Fusion automatique cellule en VBA

Re,

Merci pour le fichier, j'avais testé mais pas assez ! Et j'ai eu du mal à voir d'où venait le problème, un peu vicieux quand même.

Il fallait limiter la 2ème boucle While par la condition supplémentaire k < j :

Code:
Sub FusionCellules()
Dim i As Long, j As Long, h As Long, k As Long
Application.DisplayAlerts = False
For i = 1 To Range("B65536").End(xlUp).Row - 1 'étude colonne B
  j = i + 1
  While Cells(j, 2) = Cells(i, 2)
    Range(Cells(i, 2), Cells(j, 2)).MergeCells = True
    j = j + 1
  Wend
  For h = i To j - 2 'étude colonne E
    k = h + 1
    While Cells(k, 5) = Cells(h, 5) And [COLOR="Red"]k < j[/COLOR]
      Range(Cells(h, 5), Cells(k, 5)).MergeCells = True
      k = k + 1
    Wend
    h = k - 1
  Next h
  i = j - 1
Next i
Application.DisplayAlerts = True
End Sub

Il n'y a pas ce problème avec la 1ère boucle While puisque l'on fusionne toutes les cellules identiques.

A+
 
Re : Fusion automatique cellule en VBA

🙂🙂🙂🙂Impeccable cela marche nickel. La fusion des cellules a un peu déterioré mes mises en formes conditionnelles mais le résultat est top.
Pour le plaisir voici le code final adapté à mes colonnes et en fusionnant sur les colonnes voisines.

Merci bcp à toi.🙂🙂🙂🙂

 
Re : Fusion automatique cellule en VBA

Bonjour,

Voilà je souhaite fusionner mes 6 premières colonnes comme présenté sur le tableau de droite svp.

J'ai déjà essayé plusieurs macros (personnels et publics) sans réussite.

Merci de m'aider

Guiiggs
 

Pièces jointes

Re : Fusion automatique cellule en VBA

Bonjour job75,
je passe sur le forum et j'aimerai adapter ton super code à la colonne J de mon tableau mais sans succès
Tu aurai une idée?
Merci d'avance
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
12
Affichages
973
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…