間違っているのではなく条件を追加すればいいだけなんですが、
少しコードが冗長な感じがします。
解釈が合っているかどうか?
Sub test()
Dim i As Long
Columns(1).ClearOutline
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
If (Cells(i, 1).MergeCells And i = Cells(i, 1).MergeArea.Cells(1, 1).Row) Or _
(Cells(i - 1, 1) \u0026lt;\u0026gt; \u0026quot;\u0026quot; And Cells(i + 1, 1) \u0026lt;\u0026gt; \u0026quot;\u0026quot; And Cells(i, 1) = \u0026quot;\u0026quot;) Then
Cells(i, 1).MergeArea.Rows.Group
End If
Next
End Sub