J'ai sur la ligne 1 un titre dans des cellules fusionnées, et sur la
ligne
2 des dates dans les cellules A,B,C .....
J'aimerais si c'est possible que lorsque je rajoute une date dans la
cellule suivante de la ligne 2
la ligne 1 avec le titre ou les cellules sont fusionnées ajoute
automatiquement dans la fusion la nouvelle cellule pour que le titre
reste bien centré. (sur la mise à jour de la page par exemple).
Dans son message précédent, LSteph a écrit : Merci du retour.
Possibilité: insérer la colonne dans la partie déjà fusionnée plutôt que de l'ajouter après.
Oui mais comme c'est des dates par ordre chronologiques !!!!! Bon finalement avec l'aide du web j'ai réussi à faire en sorte que lorsque je rajoute une date sur une nouvelle colonne la fusion soit automatique sur l'ajout de la date dans la cellule, ça à l'air de fonctionner correctement (à confirmer ! ;-) ) Pour info le code utilisé est : Une fonction qui transforme le numéro de colonne en lettre: ----------------------------------------------------------------- Function LetCol(NoCol) LetCol = Split(Cells(1, NoCol).Address, "$")(1) End Function -------------------------------------------------------------------- Une procedure qui fusionne les cellules: Sub Fusionne() DerniereColonneUtilisee = Cells(2, Columns.Count).End(xlToLeft).Column Range("A1:" & LetCol(DerniereColonneUtilisee) & "1").Merge End Sub ---------------------------------------------------------------------- Et sur la page concernée le code suivant qui met à jour automatiquement la fusion sur l'ajout d'une nouvelle cellule Private Sub Worksheet_Change(ByVal Target As Range) If Not Application.Intersect(Target, Range("2:2")) Is Nothing Then Call Fusionne End If End Sub ----------------------------------------------------------------------------- Je teste toujours pour voir si il y a des bugs !! Bonne journée.
Dans son message précédent, LSteph a écrit :
Merci du retour.
Possibilité:
insérer la colonne dans la partie déjà fusionnée plutôt que de l'ajouter
après.
Oui mais comme c'est des dates par ordre chronologiques !!!!!
Bon finalement avec l'aide du web j'ai réussi à faire en sorte que
lorsque je rajoute une date sur une nouvelle colonne la fusion soit
automatique sur l'ajout de la date dans la cellule, ça à l'air de
fonctionner correctement (à confirmer ! ;-) )
Pour info le code utilisé est :
Une fonction qui transforme le numéro de colonne en lettre:
-----------------------------------------------------------------
Function LetCol(NoCol)
LetCol = Split(Cells(1, NoCol).Address, "$")(1)
End Function
--------------------------------------------------------------------
Une procedure qui fusionne les cellules:
Sub Fusionne()
DerniereColonneUtilisee = Cells(2,
Columns.Count).End(xlToLeft).Column
Range("A1:" & LetCol(DerniereColonneUtilisee) & "1").Merge
End Sub
----------------------------------------------------------------------
Et sur la page concernée le code suivant qui met à jour automatiquement
la fusion sur l'ajout d'une nouvelle cellule
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("2:2")) Is Nothing Then
Call Fusionne
End If
End Sub
-----------------------------------------------------------------------------
Dans son message précédent, LSteph a écrit : Merci du retour.
Possibilité: insérer la colonne dans la partie déjà fusionnée plutôt que de l'ajouter après.
Oui mais comme c'est des dates par ordre chronologiques !!!!! Bon finalement avec l'aide du web j'ai réussi à faire en sorte que lorsque je rajoute une date sur une nouvelle colonne la fusion soit automatique sur l'ajout de la date dans la cellule, ça à l'air de fonctionner correctement (à confirmer ! ;-) ) Pour info le code utilisé est : Une fonction qui transforme le numéro de colonne en lettre: ----------------------------------------------------------------- Function LetCol(NoCol) LetCol = Split(Cells(1, NoCol).Address, "$")(1) End Function -------------------------------------------------------------------- Une procedure qui fusionne les cellules: Sub Fusionne() DerniereColonneUtilisee = Cells(2, Columns.Count).End(xlToLeft).Column Range("A1:" & LetCol(DerniereColonneUtilisee) & "1").Merge End Sub ---------------------------------------------------------------------- Et sur la page concernée le code suivant qui met à jour automatiquement la fusion sur l'ajout d'une nouvelle cellule Private Sub Worksheet_Change(ByVal Target As Range) If Not Application.Intersect(Target, Range("2:2")) Is Nothing Then Call Fusionne End If End Sub ----------------------------------------------------------------------------- Je teste toujours pour voir si il y a des bugs !! Bonne journée.