例如已经合并的4个单元格A1~A4,总值为20,那我需要将A1~A4拆分成四个单元格,并且A1~A4每个单元格的值均为20的平均数。当然,如果平均值对应到B1~B4上也是可以的。
说明:合并单元格并不一定是连续的,比如A1~A4合并了,A5可能是空值。
这个用代码来做,选择需要取消合并的数据,然后点击按钮实现
Sub avg()
For Each Rng In Selection
n = Rng.MergeArea.Count
Rng.UnMerge
If Application.Sum(Rng.Resize(n)) = 0 Then
Rng = 0
Else
Rng.Resize(n) = Rng / n
End If
Next
End Sub
追问若要将其输入结果到另外的单元格则应该怎样弄啊?如单元格A1~A4,总值为20,那我需要将A1~A4的平均值对应输出到B1~B4
追答这个用代码来做,选择需要取消合并的数据,然后点击按钮实现
Sub avg()
For Each Rng In Selection
n = Rng.MergeArea.Count
Rng.UnMerge
If Application.Sum(Rng.Resize(n)) = 0 Then
Rng = 0
Else
Rng.offset(0,1).Resize(n) = Rng / n
End If
Next
End Sub
你试试