Fusionner Cellules entre 2 dates

Bonjour,

J'aimerais que Excel me fusionne les cellules entre 2 dates automatiquement et qu'il insère un nom à cette cellule fusionnée.

Vous trouverez dans le fichier ce que j'aimerais au final.

Merci à tous

Bonne journée

Jaan

14fusionner.xlsx (8.90 Ko)

Salut Jan,

fusionner des cellules = rarement bon !
J'ai donc fait à ma sauce avec un résultat identique malgré tout à ce que tu souhaites.

- tu peux sélectionner ta période directement dans les cellules-calendrier : les dates en [B:C] se mettront à jour automatiquement :
- pour sélectionner une période de UN jour, tu sélectionnes cette date dans les cellules-calendrier d'un clic DROIT ;
- tu peux commander l'affichage d'une période en sélectionnant les deux cellules [B:C] ;
- tu peux modifier les dates manuellement : si la date en [C] est antérieure à celle en [B], la cellule modifiée se colore de rouge sans, évidemment d'affichage possible dans le calendrier.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
Dim iRowEND%, iRow%, iColEND%, iColT1%, iColT2%
'
Application.EnableEvents = False
Application.ScreenUpdating = False
'
iColEND = Cells(1, Columns.Count).End(xlToLeft).Column
iRowEND = Range("A" & Rows.Count).End(xlUp).Row
'
If Selection.Rows.Count = 1 And Selection.Columns.Count > 1 Then
    iRow = Target.Row
    If Not Intersect(Target, Range("D2").Resize(iRowEND, iColEND)) Is Nothing Then
        With Selection
            If .Cells(1, 1).Interior.Color <> xlNone Or .Cells(1, .Columns.Count).Interior.Color <> xlNone Then Call Nettoyage(iRow, iColEND)
            iColT1 = Selection.Column - 1
            iColT2 = Selection.Columns.Count
            Call DrawSelection(Range("A" & iRow).Offset(0, iColT1).Resize(1, iColT2))
        End With
    End If
    '
    If Not Intersect(Target, Range("B2").Resize(iRowEND, 2)) Is Nothing Then _
        If WorksheetFunction.CountA(Selection) = 2 Then _
            Call Nettoyage(iRow, iColEND): _
            iColT1 = Rows(1).Find(what:=Range("B" & iRow).Value, lookat:=xlWhole, LookIn:=xlFormulas).Column - 1: _
            iColT2 = Rows(1).Find(what:=Range("C" & iRow).Value, lookat:=xlWhole, LookIn:=xlFormulas).Column: _
            Call DrawSelection(Range("A" & iRow).Offset(0, iColT1).Resize(1, iColT2 - iColT1))
End If
'
Application.EnableEvents = True
Application.ScreenUpdating = True
'
End Sub


A+

22jan.xlsm (21.51 Ko)
Rechercher des sujets similaires à "fusionner entre dates"