如果是要直接复制过去,除了 用宏,只能一个个复制,
不过此问题 可以用 简单的公式 和 操作解决,
如下例:
把C 列内容填到 A 列
操作步骤:
1,在 第一个单元格 输入 公式
=C1
2, 选中 剩余合并单元格,
输入 公式
=index(C:C,1+counta(A$1:A3))
按Ctrl+Enter 即可 (其中A$1:A3 里的A3 根据第一个合并单元格 的实际范围 调整
如图为操作结果:
怎么编写代码啊,,我这有3万多个数据
追答把7改为你的3万多就可以了。
在EXCEL里面,按ALT+F11,打开新窗口里面按CTRL+R,鼠标双击你的那个工作表,粘贴我的代码,把7修改为你数据的具体行数,按F5运行,瞬间就完成了。
有的对应不上啊大神
合并了的单元格,只显示第一个单元格的数字,例如第一个45686.32就是合并区域的第一个,这个是EXCEL规定了的,你设置为上对齐、或者合并后的居中吧。
一开始就问你合并了的如何处理,你一直都不回复,是不是合并了的单元格需要保留所有内容麻,那就需要使用下面的代码:
Sub xxx()
For i = 1 To 7
If Cells(i, 2).MergeCells Then '是合并单元格
If Cells(i, 2).MergeArea.Cells(1, 1).Address = Cells(i, 2).Address Then '合并单元格的第一格
Cells(i, 2) = Cells(i, 1)
Else
Cells(i, 2).MergeArea.Cells(1, 1) = Cells(i, 2).MergeArea.Cells(1, 1) & Chr(10) & Cells(i, 1)
End If
Else
Cells(i, 2) = Cells(i, 1)
End If
Next i
End Sub
一个合并后的单元格对应C列里的一个数据,已经排好序了