This macro will search every cell in the active sheet to see if they are
merged. If they are, it stores the range of the merged cells in a temp.
range variable, unmerges the cells, then fills the range with the value
of the first cell in the unmerged range
Sub UnMergeFill()
Dim cell As Range, joinedCells As Range
Application.ScreenUpdating = False
For Each cell In ThisWorkbook.ActiveSheet.UsedRange
If cell.MergeCells Then
Set joinedCells = cell.MergeArea
cell.MergeCells = False
joinedCells.Value = cell.Value
End If
Next
Application.ScreenUpdating = True
End Sub