Option Explicit
Sub test()
Call concatenate_cells_formats(Range("A1"), Range("C1,K12,D2"))
End Sub
Sub concatenate_cells_formats(cell As Range, source As Range)
'Erik Van Geit
'060424
Dim c As Range
Dim i As Integer
i = 1
With cell
.Value = vbNullString
.ClearFormats
For Each c In source
.Value = .Value & " " & c
Next c
.Value = Trim(.Value)
For Each c In source
With .Characters(Start:=i, Length:=Len(c)).Font
.Name = c.Font.Name
.FontStyle = c.Font.FontStyle
.Size = c.Font.Size
.Strikethrough = c.Font.Strikethrough
.Superscript = c.Font.Superscript
.Subscript = c.Font.Subscript
.OutlineFont = c.Font.OutlineFont
.Shadow = c.Font.Shadow
.Underline = c.Font.Underline
.ColorIndex = c.Font.ColorIndex
End With
.Characters(Start:=i + Len(c), Length:=1).Font.Size = 1
i = i + Len(c) + 1
Next c
End With
End Sub