Retourner la valeur d'une cellule fusionnée/fractionner cellule fusionnée

Bonjour,

Grâce à une aide bien précieuse j'ai réussi à trouver une formule qui me permettait de rechercher une cellule selon si elle appartient à la colonne C ou D et de retourner la valeur de la cellule E si c'est le cas. Sauf que la formule retourne 0 si la cellule est fusionnée. J'ai décidé de me diriger vers VBA pour résoudre le problème. Ceci dit je ne trouve pas la fonction et je ne sais pas si ça marche pour les cellules fusionnées aussi.

Sinon existe-t-il une formule ou un code qui permettrait de fractionner toutes les cellules fusionnées en dupliquant la valeur de la première cellule dans les autres cellules ? Je m'explique: si par exemple 3 cellules fusionnées (E1, E2 et E3) affichent gamma, au moment où on les fractionne l'idéal serait qu'on n'ait pas juste gamma dans E1 mais aussi dans E2 et E3. L'idée serait d'automatiser ça parce que le tableau est long, ce n'est donc pas possible de le faire à chaque fois à la main.

Merci d'avance pour votre aide.

22essaiv1.xlsx (10.26 Ko)
Sub mavaleur1()

Dim plage As Range
Set plage = ThisWorkbook.Worksheets("Feuil2").Range("C3:D10")
Sheets("Feuil1").Activate

mavaleur = Cells(3, 2) 'j'aimerai automatiser ça pour l'appliquer à une plage de cellule et pas une cellule à la fois

For Each cell In plage
If cell.Value = mavaleur Then
 'J'aimerai retourner ici la cellule de la colonne suivante de cell même si la cellule est fusionnée
End If
Next cell

End Sub

Bonjour

Sub EnleveFusion()
  Dim rng As Range
  Dim i As Integer, j As Integer
  Set rng = Range("B3:E10")
  rng.UnMerge
  For i = 1 To rng.Columns.Count
    For j = 1 To rng.Rows.Count
      If rng.Cells(j, i) = "" Then rng.Cells(j, i) = rng.Cells(j - 1, i)
    Next j
  Next i

End Sub

Bonjour Yal_excel,

Je te remercie pour ta réponse ceci j'ai un soucis parce que si une cellule est vide (supposée être vide parce que pas de valeur) ça me copie la cellule au-dessus. Je devrai peut-être remplacer les cellules vides par du texte ?

C'est bon j'ai trouvé la solution si ça intéresse quelqu'un:

Sub défusionner()
    ' supprime toutes les fusions de cellules
    ' toutes les cellules d'une fusion reçoivent la valeur ou la formule d'origine
    Dim c1 As Range, c2 As Range, plage As Range, valeur As Variant
    Application.ScreenUpdating = False
    For Each c1 In ActiveSheet.UsedRange
        If c1.MergeCells Then
            valeur = c1.Formula
            Set plage = c1.MergeArea
            plage.UnMerge
            For Each c2 In plage
                c2.Formula = valeur
            Next c2
        End If
    Next c1
    Application.ScreenUpdating = True
End Sub
Rechercher des sujets similaires à "retourner valeur fusionnee fractionner"