对EXCEL中某一行的数据前添加相同字段

来源:百度知道 编辑:UC知道 时间:2024/05/30 00:44:18
我现在需要在EXCEL中某一行的数据前添加相同的字段,比如在每行TOP的上一行前都添加上“depth”字段,因为有几百个TOP行,不能逐一加,所以急求怎么在excel中能自动帮我添加。
非常感谢冬虫夏草!我想补充一下问题
NAME :mary
TIME :2009.11.1
TOP
...
NAME :Tick
TIME :2009.11.1
TOP
...
NAME :Herry
TIME :2009.11.1
TOP
...

类似这样的数据格式,在每个TOP前加一行depth该如何操作呢?你的上一个程序所有的TIME行都被depth代替了,我只想插入可以吗?

你的意思是不是这样

1  A

2  TOP

3  B

4  TOP

5  C

6  TOP

以上有六行,你要在A、B、C前面都加上depth是不是,如果A、B、C都一样的话用查找/替换就可以了,如果不一样只能用宏来实现,如你现在数据是表1(Sheet1)且TOP所在为A列的话,按ALT+F11调出VBA,双击左边的Sheet1调出表1代码窗口,将下面代码复制到右边Sheet1窗口中。

Sub 填充()

fr = [A65536].End(xlUp).Row

For i = 2 To fr

If Cells(i, 1).Value = "TOP" Then  '这行和下行中像Cells(i, 1)的1代表A列,B列改为2,以此类推,条件为找到等于TOP的值

Cells(i - 1, 1).Value = "depth" & Cells(i - 1, 1).Value '改为depth加原来的值,按自己要求改,上一行CELL后面1有改的话这行也要跟着改

End If

Next i

End Sub

然后在表1中按ALT+F8,选“填充”后执行就可以了。 

要插入depth也可以,按照我贴出图片的步骤操作,在任何工作表(同一工作簿)都可以.代码如下,连代码中的解释都粘贴过去一样可以运行,没影响

Sub 填充()

With ActiveSheet   '关联当前工作表

fr =