Je m'explique : chaque cellule de la 1ère ligne de mon tableau contient une
lettre.
Mon code doit fusionner les cellules de la 2ème ligne à la condition que les
cellules correspondantes de la 1ère ligne soit égale.
Je sais pas si c très clair, en gros ça ressemble à ça :
1ère ligne : A A B B B C C C
Le code doit fusionner les cellules de la 2ème ligne ainsi : (1 et 2) (3 4
et 5) (6 7 et 8).
Merci à tous ceux qui pourront me mettre sur la voie !
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour Furion,
Sub Macro1() Application.DisplayAlerts = False With Range("A1:O1") 'ou Selection ou bien plage à déterminée Set plg = Range(.Item(2).Address, Cells(1, .Item(.Columns.Count).Column + 1)) End With dd = Range("A1").Address For Each c In plg x = c.Address y = Range(dd).Item(1).Value If c <> y Then Range(dd).MergeCells = True dd = Range(c.Address).Address Else dd = Range(Range(dd), Range(c.Address)).Address End If Next Application.DisplayAlerts = True End Sub
isabelle
Bonjour à tous !
J'ai un petit problème pour trouver un code vba.
Je m'explique : chaque cellule de la 1ère ligne de mon tableau contient une lettre. Mon code doit fusionner les cellules de la 2ème ligne à la condition que les cellules correspondantes de la 1ère ligne soit égale.
Je sais pas si c très clair, en gros ça ressemble à ça :
1ère ligne : A A B B B C C C
Le code doit fusionner les cellules de la 2ème ligne ainsi : (1 et 2) (3 4 et 5) (6 7 et 8).
Merci à tous ceux qui pourront me mettre sur la voie !
bonjour Furion,
Sub Macro1()
Application.DisplayAlerts = False
With Range("A1:O1") 'ou Selection ou bien plage à déterminée
Set plg = Range(.Item(2).Address, Cells(1, .Item(.Columns.Count).Column
+ 1))
End With
dd = Range("A1").Address
For Each c In plg
x = c.Address
y = Range(dd).Item(1).Value
If c <> y Then
Range(dd).MergeCells = True
dd = Range(c.Address).Address
Else
dd = Range(Range(dd), Range(c.Address)).Address
End If
Next
Application.DisplayAlerts = True
End Sub
isabelle
Bonjour à tous !
J'ai un petit problème pour trouver un code vba.
Je m'explique : chaque cellule de la 1ère ligne de mon tableau contient une
lettre.
Mon code doit fusionner les cellules de la 2ème ligne à la condition que les
cellules correspondantes de la 1ère ligne soit égale.
Je sais pas si c très clair, en gros ça ressemble à ça :
1ère ligne : A A B B B C C C
Le code doit fusionner les cellules de la 2ème ligne ainsi : (1 et 2) (3 4
et 5) (6 7 et 8).
Merci à tous ceux qui pourront me mettre sur la voie !
Sub Macro1() Application.DisplayAlerts = False With Range("A1:O1") 'ou Selection ou bien plage à déterminée Set plg = Range(.Item(2).Address, Cells(1, .Item(.Columns.Count).Column + 1)) End With dd = Range("A1").Address For Each c In plg x = c.Address y = Range(dd).Item(1).Value If c <> y Then Range(dd).MergeCells = True dd = Range(c.Address).Address Else dd = Range(Range(dd), Range(c.Address)).Address End If Next Application.DisplayAlerts = True End Sub
isabelle
Bonjour à tous !
J'ai un petit problème pour trouver un code vba.
Je m'explique : chaque cellule de la 1ère ligne de mon tableau contient une lettre. Mon code doit fusionner les cellules de la 2ème ligne à la condition que les cellules correspondantes de la 1ère ligne soit égale.
Je sais pas si c très clair, en gros ça ressemble à ça :
1ère ligne : A A B B B C C C
Le code doit fusionner les cellules de la 2ème ligne ainsi : (1 et 2) (3 4 et 5) (6 7 et 8).
Merci à tous ceux qui pourront me mettre sur la voie !
Furion
Merci beaucoup Isabelle !
Ton code tourne nickel !
Saurais tu comment peut on faire pour ajouter une cellule à une sélection. Il me semble qu'il y a une expression en vba pour faire ça mais je m'en souviens plus, ça ressemble à peu près à ça :
Cells(1,1).select Cells(1,2).addselection
Est ce que ça dirait qqchose à qqun ?
Merci beaucoup Isabelle !
Ton code tourne nickel !
Saurais tu comment peut on faire pour ajouter une cellule à une sélection.
Il me semble qu'il y a une expression en vba pour faire ça mais je m'en
souviens plus, ça ressemble à peu près à ça :
Saurais tu comment peut on faire pour ajouter une cellule à une sélection. Il me semble qu'il y a une expression en vba pour faire ça mais je m'en souviens plus, ça ressemble à peu près à ça :